Разработка ПО для 580ВМ80

8-битные микроконтроллеры и микропроцессоры от Intel и их клоны, а также компьютеры на них построенные

Moderator: Shaos

User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

Я сегодня дважды обновлял эмулятор
понял - перепопробую
Это какая?
да, может, версия монитора разная - заменил RET на JMP 0C800H - помогло, а то зацикливалось. ну, это не проблема.
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Post by b2m »

Да нет, блин, где-то я всё-таки лажанулся, со Специалистом-то и не получилось :(
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

Только вот монитор пытается сразу грузить что-то с магнитофона, поэтому выходит диалог открытия файла.
понятно, это можно будет прямо в пзу загрузчика подправить - были варианты, которые сразу на монитор переходили
со Специалистом-то и не получилось
если я правильно понимаю - просто ошибка в пзу монитора - это проблема решаемая.

теперь вопрос - как запустить встроенный отладчик?

и просто "пожелание" чтоб эмулятор находил конфигурации в своей папке а не в текущей :) а то я написал батник:

Code: Select all

copy %1 d:\emu\*.* /b /y
cd d:\emu
emu %1
но это некрасиво :)

спасибо!
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Post by b2m »

shoorick wrote:как запустить встроенный отладчик?
Изменить файл specialist.cfg
Начало будет выглядеть так:

Code: Select all

main.CPUClock=2MHz
main.Caption="Специалист"

dbg : debug {
}

CPU : K580wm80a {
  debug=dbg
  debug=tapeio
  mem=mm
  pc=C000
}
Я обновил эмулятор на сайте, теперь вроде работает из любого каталога.
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

да, теперь нормально - теперь можно смотреть что к чему

спасибо! как только оформлю чего-нибудь - сообщу! (или если опять споткнусь)
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Post by b2m »

Если разберёшься с файлами конфигурации, можешь и свой монстр сконфигурировать, а то и старые программы запустить :wink:
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

в BIOS.rom для специалиста по адресу 899Н заменяем 24Н на 51Н и отключаем ненужный механизм, который для команд вида

Code: Select all

GXXX,YYY
вставлял RST по адресу YYY и вписывал JMP себе в кишки по адресу 38

правда, для команд вида

Code: Select all

GXXX
он ничего вставлять не должен был, но здесь наверное версия с ошибкой (у меня был уже не первый)...

теперь программа

Code: Select all

    CALL    0C010H
    LXI     H,DAT
    CALL    0C818H
    RET
работает нормально
----------------
а и со старым пзу теперь работает нормально... тогда не знаю - ну, работает - и хорошо :)
----------------
дошло! это так работала программа, загруженная при старте, то есть загрузчиком, а не монитором. так что это я протупил :roll:
Last edited by shoorick on 08 Nov 2007 08:26, edited 2 times in total.
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

Если разберёшься с файлами конфигурации, можешь и свой монстр сконфигурировать, а то и старые программы запустить
да я уже заметил потенциал, но реанимировать такого монстра желания нет. просто была мысль использовать скучающее железо в виде готовых одноплатных микроэвм для чего-нить
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

Выявил и исправил две группы ошибок:
push/pop
r(cond)

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

как говорится - масло пошло! ;)
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

HardWareMan wrote:А я старым-добрым тасмом пользуюсь.
кстати, при желании тасм к WinAsm Studio тоже можно прикрутить (я так понял который табличный, а то я для борландовского тоже макросы встречал для поддержки ³8085)
User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

исправил ошибку в макросе RKS_END. должно быть так:

Code: Select all

macro RKS_END {
  rks_end_ = $ - 1
  dw 0
}     
          
macro rks_end {
  rks_end_ = $ - 1
  dw 0
}     
- а то неправильные rks получались, если начальный адрес ненулевой.
MaxDmy
Junior
Posts: 4
Joined: 06 Jun 2009 14:52
Location: 79.240.97.96

Post by MaxDmy »

странно что Emu80 ругаеться как "Ошибка при вводе" на загрузку .rks хотя выполняет :)

как правильно .rks создать вообще ?

кстати - кто то полные исходники игр видел?
asm или C ?

сам писал на маш кодах для своего Специалиста а как народ портирование игр делал ?

Эх какое замечательное время было :)
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

MaxDmy wrote:кстати - кто то полные исходники игр видел?
asm или C ?
Откуда С для Спеца?
MaxDmy
Junior
Posts: 4
Joined: 06 Jun 2009 14:52
Location: 79.240.97.96

Post by MaxDmy »

HardWareMan wrote:
MaxDmy wrote:кстати - кто то полные исходники игр видел?
asm или C ?
Откуда С для Спеца?
есть нету - тоже хороший ответ ибо понять надо :)
User avatar
Shaos
Admin
Posts: 24088
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

На специалист можно писать программы на С-подобном языке RW1 - см. NedoPC SDK
Я тут за главного - если что шлите мыло на me собака shaos точка net