Важная информация

User Tag List

Страница 24 из 34 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя
Показано с 231 по 240 из 338

Тема: Ассемблер Радио-86РК

  1. #231
    Master Аватар для Voxel
    Регистрация
    18.01.2005
    Адрес
    Тихвин
    Сообщений
    509
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    8 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В общем задержка решила проблему.

    Ниже программа умеющая двигать ноль по экрану, но убого кривая. Может кто-то предложит лучше вариант?

    Скрытый текст


    Код:
    keyb_ask	EQU     0F812H	;опрос состояния клавиатуры
    keyb_enter	EQU     0F803H	;ввод символа с клавиатуры код в A
    keyb_ask_key	EQU	0F81BH	;опрос кода нажатой клавиши код в A
    prn_symb 	EQU     0F809H	;печать символа в C код символа
    prn_line	EQU     0F818H	;печать строки в HL адрес строки
    prn_hex		EQU	0F815H	;печать в HEX в A байт
    prompt  	EQU 	0F86Ch
    up		EQU	19h
    down		EQU	1ah
    left		EQU	08h
    right		EQU	18h
    enter		EQU	0dh
    
    		org	0
    		mvi	c,1fh
    		call	prn_symb
    		mvi	b, 0
    		mvi	c, 1
    start:		call	coord
    		mvi	m, '0'
    		call	delay
    		mvi	m, ' '
    start1:		call	keyb_ask_key
    		cpi	up
    		jz	go_up
    		cpi	down
    		jz	go_down
    		cpi	left
    		jz	go_left
    		cpi	right
    		jz	go_right
    		cpi	enter
    		jz	prompt
    		jmp	start
    
    
    go_up:		mov	a,c
    		cpi	1
    		jz	start1
    		dcr	c
    		jmp	start
    go_down:	mov	a,c
    		cpi	26
    		jz	start1
    		inr	c
    		jmp	start
    go_left:	mov	a,b
    		cpi	0
    		jz	start1
    		dcr	b
    		jmp	start
    go_right:	mov	a,b
    		cpi	64
    		jz	start1
    		inr	b
    		jmp	start
    
    
    
    coord:		push	d	;B это x C это y
    		push 	b
    		lxi 	h,77c2h
    		lxi	d,004eh
    coord1:		dad	d
    		dcr	c
    		jnz	coord1
    		mov 	e,b
    		dad	d
    		pop	b
    		pop 	d
    		ret
    
    delay:		push	b
    		mvi	b,020h
    delay2:		mvi	c,0ffh
    delay1:		nop
    		dcr	c
    		jnz	delay1
    		dcr	b
    		jnz	delay2
    		pop	b
    		ret
    [свернуть]
    УКНЦ+FDD+HDD; ZX-NEXT; Scorpion 256k; ZXM Phoenix+TurboSoundFM; Spectrum 48k; ZX Hobbit; Radio 86RK

  2. #232
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,843
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,818
    Поблагодарили
    1,044 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Например так

    Скрытый текст

    Код:
    		org	0
    		mvi	c,1fh
    		call	prn_symb
    		mvi	b, 0
    		mvi	c, 1
    		lxi 	h,77c2h
    		shld XY
    start:
    		lhld XY
    		xchg
    		call	coord
    		call cmpHLDE
    		jz start1
    		mvi	m, '0'
    		shld XY
    		xchg
    		mvi m, ' '
    start1:
    		call	keyb_ask_key
    		cpi 0FFh
    		jz start1
    		
    		mov e,a
    		cpi	up
    		jnz	ChkDown
    		dcr c
    		jnz ChkDown
    		inr c
    ChkDown:
    		cpi	down
    		jnz	ChkLeft
    		mvi a,26
    		cmp c
    		jz	ChkLeft
    		inr c
    ChkLeft:
    		mov a,e
    		cpi	left
    		jnz	ChkRight
    		dcr b
    		jp	ChkRight
    		inr b
    ChkRight:
    		cpi	right
    		jnz ChkEnter
    		mvi a,64
    		cmp b
    		jz	ChkEnter
    		inr b
    ChkEnter:
    		mov a,e
    		cpi	enter
    		jz	prompt
    		call	delay
    		jmp	start
    
    coord:		push	d	;B это x C это y
    		push 	b
    		lxi 	h,77c2h
    		lxi	d,78
    coord1:		dad	d
    		dcr	c
    		jnz	coord1
    		mov 	e,b
    		dad	d
    		pop	b
    		pop 	d
    		ret
    
    delay:		push	b
    		lxi	b,0400h
    delay1:	dcr	c
    		jnz	delay1
    		dcr	b
    		jnz	delay1
    		pop	b
    		ret
    		
    cmpHLDE:
    		mov a,l
    		sub e
    		rnz
    		mov a,h
    		sbb d
    		ret
    
    XY:		dw 0
    [свернуть]
    Последний раз редактировалось ivagor; 14.08.2019 в 20:03. Причина: исправил некритичные помарки в двух местах

  3. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    Voxel (14.08.2019)

  4. #233
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добрый вечер. Собрал себе компьютер Радио-86рк, но он отказывается работать. Методика отладки компьютера предполагает использование чипа ПЗУ с особой тестирующей прошивкой. В седьмом выпуске журнала Радио за 1988 год приведен код этой программы на ассемблере. Я в этом языке не силен и не знаю, как преобразовать его в бинарный файл, который можно будет зашить в ПЗУ. Прошу вашей помощи.

    Вот сайт, на котором есть ассемблер для Радио-86рк http://rk86.ru/

    Вот вырезка из исходной статьи


    Вот тот же самый код, но в печатном виде
    ;Программа для наладки РАДИО-86РК
    C000 = VG75 EQU 0C000H
    E000 = VT57 EQU 0E000H
    8000 = VV55 EQU 8000H
    F800 ORG 0F800H
    F800 C303F8 JMP BEGIN
    ;Инициализация KP580BB55
    F803 ЗЕ8А MVI A,9AH
    F805 320380 STA W55+3
    ;Инициализация КР580ВГ75
    F808 2101C0 BEGIN: LXI H,VG75+1
    F80B 3600 MVI M,B
    F00D 2В DCX H
    F80E 364D MVI M,4DH
    F010 361D MVI M,1DH
    F812 3699 MVI M,99H
    F814 3693 MVI M,93H
    ; Инициализация КР580BT57
    F816 3E80 MVI A,80H
    P818 3208Е0 STA VT57+8
    F818 2104E0 LXI H,VT57+4
    F81E 36D0 MVI M,BD0H
    F82a 3636 MVI M,36H
    F822 23 INX H
    F923 3623 MVI M,23H
    f825 3649 MVI M,49H
    ; Старт ПДП
    F827 3EA4 MVI A,0A4H
    F829 3208E0 STA VT57+8
    ; Заполнение экранной области ОЗУ
    F82С 210036 LXI Н,3600Н
    F82F 7D LABEL1: MOV A,L
    F850 E67F ANI 7FH
    F832 77 MOV M,A
    F833 23 INX H
    F834 7C MOV A,H
    F835 FE40 CPI 40Н
    FB37 C22AF8 JNZ LABEL1
    ; Старт отображений
    F83A 3E27 MVI A,27H
    F83C 3201C0 STA VG75+1
    ; Проверка работы клавиатуры
    F83F 210080 LXI H,W55
    F842 367F MVI M,7FH
    F844 7E LABEL2: MOV A,M
    F845 07 RLC
    F846 77 MOV M,A
    F847 3A0180 LABEL3: LDA VV55+1
    F84A 3C INR A
    F84B C247F8 JNZ LABEL3
    F84E C344F8 JMP LABEL2
    F851 END
    Последний раз редактировалось Kuprin; 01.09.2019 в 20:47.

  5. #234
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Kuprin, этот тест нехороший. На экране Вы ничего путного не увидите. Не заморачивайтесь с ним, запускайте обычный монитор.
    А если хочется посмотреть тест, то в левом столбце адрес, правее код команды. Вот этот код забивайте по соотв. адресу, и получите прошивку. Правые столбцы листинга не нужны.

  6. #235
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от IgorR76 Посмотреть сообщение
    Kuprin, этот тест нехороший. На экране Вы ничего путного не увидите. Не заморачивайтесь с ним, запускайте обычный монитор.
    А если хочется посмотреть тест, то в левом столбце адрес, правее код команды. Вот этот код забивайте по соотв. адресу, и получите прошивку. Правые столбцы листинга не нужны.
    Спасибо за ответ.

    В том то и дело, что собранный компьютер отказывается выводить что-либо на экран. Поэтому этот тест должен быть самым подходящим в моем случае.

    Правда, товарищи с другого форума говорят, что в коде возможно есть ошибки.
    Последний раз редактировалось Kuprin; 01.09.2019 в 22:49.

  7. #236
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Именно неработоспособность теста я и имел ввиду. Он не выводит на экран нормальную картинку.
    Есть другой, большой тест, который сначала проверяет озу и периферию, потом уж пытается рисовать на телевизоре.
    Поищите, он есть в архивах. Вспомнил, он с "шагателем", кнопка такая, по которой выполняется одна команда. Можно тестером следить за состоянием шин.

    Вообще запуск только что самостоятельно спаянного компьютера дело непростое. Спаять - легко. Запустить и отладить - сложно.
    Если это у Вас первый раз, то форумы вряд ли помогут. Нужен специалист с опытом и приборами, желательно локально у компа. Но возможно и удалённо, по видеосвязи.
    Последний раз редактировалось IgorR76; 01.09.2019 в 23:46.

  8. #237
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от IgorR76 Посмотреть сообщение
    Именно неработоспособность теста я и имел ввиду. Он не выводит на экран нормальную картинку.
    Есть другой, большой тест, который сначала проверяет озу и периферию, потом уж пытается рисовать на телевизоре.
    Поищите, он есть в архивах. Вспомнил, он с "шагателем", кнопка такая, по которой выполняется одна команда. Можно тестером следить за состоянием шин.
    Мне кажется, вы именно об этом тесте и говорите. Вот статья целиком http://www.emuverse.ru/wiki/%D0%A0%D...B4%D0%BA%D0%B5

    Как раз предлагается подключить пошагиватель и проверять сигналы. А ближе к концу советуют подключить экран.

  9. #238
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В номере журнала, где опубликована схема шагателя (№7 1986), есть дамп расширенного теста. Я его имел ввиду.

  10. #239
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от IgorR76 Посмотреть сообщение
    В номере журнала, где опубликована схема шагателя (№7 1986), есть дамп расширенного теста. Я его имел ввиду.
    В начале статьи 1988 года пишут:
    "Однако если этого не произошло, то «оживление» компьютера становится весьма трудоемкой задачей, поскольку методика, предложенная в июльском номере журнала за 1986 г., по отзывам читателей, оказалась малоэффективной. В настоящее время разработана новая методика, хорошо зарекомендовавшая себя при отлаживании большого числа компьютеров."

  11. #240
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну как хотите. Тест из 86г проверяет память и периферию, этот новый из 88го - нет. На экране только намусорит.

Страница 24 из 34 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. РАДИО-86РК на Z80
    от Vladimir_S в разделе Радио-86РК
    Ответов: 310
    Последнее: 06.06.2017, 21:13
  2. Радио-86РК: По страницам журнала "Радио"
    от Viktor2312 в разделе Радио-86РК
    Ответов: 79
    Последнее: 13.02.2014, 08:34
  3. Радио 86рк на AVR
    от PWA в разделе Радио-86РК
    Ответов: 6
    Последнее: 10.06.2013, 13:01
  4. Радио 86РК
    от Shnurkov в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 02.01.2009, 12:52

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •