|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Author |
Message |
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Не сказал бы, что это очевидно... По Ctrl+M выбрал bios, вроде всё заработало.
По поводу точности эмуляции ВВ79. Моё пошаговое устройство показывает, что после записи управляющего слова "Сброс" (0CFh) индикатор очищается, в эмуляторе же остаётся на индикаторе то, что и было. Вероятно, это имеет значение.
При работе с эмулятором заметил, что если выбрать File -> New, а потом в окошке выбора нажать Cancel, то при открытом окне дебагера эмулятор завершает работу. Если же дебагер закрыт, то к завершению работы приводит попытка его открытия.
|
03 Oct 2012 04:27 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Спасибо за информацию.
Да, с отладчиком надо аккуратнее, косяков там не мало.
Постараюсь исправить.
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
03 Oct 2012 04:34 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Вообще-то эмулятор здорово облегчает жизнь. Но как я полагаю, эмуляция компьютеров в целом достаточно безглючна. Имеет ли смысл мне писать здесь о каких-то замеченных недостатках? Ведь они касаются, как я понимаю, только интересной мне конфигурации Calc, которая не представляет интереса для других.
П.С. Если в онлайн-ассемблерe ошибочно написать, к примеру, pop HL вместо pop H, то генерится код C1, соответствующий pop B, а не код E1, соответствующий pop H. Можно потом долго искать...
|
03 Oct 2012 04:49 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Совершенству нет предела, но всё равно, пиши
Приколько, даже ошибки не выдаёт. Но на полноценный ассемблер эта поделка и не претендует.
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
03 Oct 2012 07:00 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Ещё заметил в отладчике, что если идти по коду клавишей F8, основное окошко эмулятора не отображает изменений. Например, выводишь символ на индикатор, а после этой команды на индикаторе ничего не происходит. Но если часть кода пройти с помощью F4 (я пропускал циклы, ответственные за паузу после вывода символа), то индикатор нормально отрабатывает то, что должен был показать раньше.
Но двигаться в нужном направлении будет?
|
03 Oct 2012 07:15 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Не ты первый на это жалуешься. Но обновление экрана из отладчика не предусмотрено программным интерфейсом. Даже я не знаю, будет ли это когда-либо сделано. Логично. Когда приходит время обновлять экран, он обновляется.
Всё зависит от наличия времени и желания. А эти две сущности, заразы, редко когда одновременно имеются
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
04 Oct 2012 03:43 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Что-то я не совсем понял. Когда фрагмент кода в отладчике проходишь по F8, индикатор изменений не показывает. Когда этот же фрагмент кода в отладчике проходишь по F4, индикатор изменения показывает. Сейчас я упёрся в это дело, не пойму, откуда вылезает в бегущей строке лишний символ, вообще левый. Придётся снова прошить РФку, посмотреть, как оно будет в железке .
П.С. С лишним символом, похоже, разобрался. Режим вывода на индикатор со сдвигом влево оказался не так прост, как хотелось. Перезапись управляющего слова изменяет адрес следующего символа в ОЗУ индикации, и в общем случае нужно перезаполнить индикатор. В эмуляторе теперь всё работает, но в железке всё равно проверю.
|
04 Oct 2012 04:03 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Обновил эмулятор на сайте. Исправил сброс, добавил дамп внутренней памяти дисплея ВВ79 (по Ctrl+M), в нижней строке теперь показывается позиция левого символа (в режиме со сдвигом).
Заметил, что при трассировке иногда появляются дублирующиеся символы. Но это не косяк. Просто экран отобразился в такой момент, когда один символ уже изменился, а следующий ещё "горит" с предыдущего цикла обновления дисплея ВВ79. Реальное содержимое памяти лучше смотреть через дамп.
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
04 Oct 2012 07:17 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Спасибо!
|
04 Oct 2012 07:35 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Наврное, вчера и ассемблер обновлялся? Сегодня он "забыл" о существовании у процессора регистра B . Если ассемблировать строчку
то внизу появляется сообщение
И так со всеми строчками, где встречается регистр B. Хотя в окошке дампа соответствующие коды появляются.
|
05 Oct 2012 00:00 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Опс
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
05 Oct 2012 02:22 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Железочка обзавелась "рамой" - статическим ОЗУ с батарейкой, 32кБ по адресам 8000h-FFFFh. b2m, нельзя ли добавить это ОЗУ в эмулятор железочки?
Это Calc в твоём эмуляторе - на случай, если ты успел позабыть.
|
18 Dec 2012 09:33 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Да ради Бога!
Измени конфиг вот так:
Только это будет без батарейки
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
18 Dec 2012 12:32 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Не мог бы ты пояснить выделенное? RAM по адресам 0-07FFh пока нет, как и по адресам 0800-0FFFh.
|
18 Dec 2012 21:03 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Я уже не помню, зачем так сделано. Если есть только биос в адресах 0000-07FF и ОЗУ 8000-FFFF, а раскладка памяти фиксированная, то можно и проще (это весь конфиг):
| | | | Code: main.CPUClock=2MHz main.Caption="Calc"
CPU : K580wm80a { mem=mm port[02-03]=ww79.data rst[7]=ww79.irq }
bios : Memory { rom="Calc\calc.rom" }
kbd : Keyboard { layout="Calc\calc.kbd" }
mem1 : Memory { size=8000 }
mm : MemMap { map[0][0000-07FF]=bios map[0][8000-FFFF]=mem1 }
dspmux : MemMap2 { map[00-FF]=vid.pins }
kbdreg : Register { write[0-2]=kbd.mask }
ww79 : K580ww79 { scan=dspmux.offset scan=kbdreg ret=kbd.~idata display=dspmux }
vid : Indicator { maskbitmap="Calc\calc.bmp" background[0]="Calc\calc.gif" background[1]="Calc\calc.bmp" pin[0-38].point=18,9,23,0,8 pin[1-39].point=24,18,23,0,8 pin[2-3A].point=24,32,23,0,8 pin[3-3B].point=18,40,23,0,8 pin[4-3C].point=11,32,23,0,8 pin[5-3D].point=11,18,23,0,8 pin[6-3E].point=18,24,23,0,8 pin[7-3F].point=29,40,23,0,8 } | | | | |
О, вспомнил
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
18 Dec 2012 23:42 |
|
|
Who is online |
Users browsing this forum: No registered users and 0 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|