esl
20.05.2014, 16:05
для начала базы есть тут ESL: https://dl.dropboxusercontent.com/u/...rc-20140520.7z
FORTH32: https://dl.dropboxusercontent.com/u/...rc-20140520.7z
тут предлагаю обсудить разные тонкости
2FORTH32:
в твоём дизасме
Disk_G_status: db 0 ; DATA XREF: ROM0:049Fw
F701 ; Boot:Force_bootr
F701 ; D7=1 - есть ГЗУ
F701 ; D0=1 - есть дисковод
в моем
RAM:F701 00 FDDFLAG: db 0 ; DATA XREF: RAM:049Fw
RAM:F701 ; RAM:_LoadOSr
RAM:F701 ; 0x01 - FDD FLAG
RAM:F701 ; 0x80 - GZU PAGES 1-3 exist
во первых FDDFLAG эт как бы стандартное название переменной из доки на биос
во вторых D7=1 говорит о том что есть ГЗУ для РАМДИСКА
т.е. есть страницы 1-3, а не только 0
проверку этого флага видел только в 1 (одном) месте
Микродос датированый 1990-01-05
Он есть в \OS\DOS_LAYOUTS\microdos
mdos2_900105_START.kdi.idb
mdos2_900105_ROM1.kdi.idb
mdos2_900105_ROM2.kdi.idb
он сам по себе забавен, он работает и на ОПТС1 и на ОПТС2
и у него есть драйвер рамдиска, который активируется как раза проверкой этого флага (откуда и узнал про него)
и если D7=0 - то диска E просто нет.
кстати, и если загрузить ОПТС1 у которого достаточно ГЗУ, то этого флага там не будет, и рамдиска тоже.
кстати драйвер там вообще лижит отдельно, под АЦЗУ.
он как-бы сбоку прикручен.
---------- Post added at 15:01 ---------- Previous post was at 14:43 ----------
еще сразу то что неправильно
таблица токенов, вторая часть (29E5)
посмотри у меня в roms\OPTS20\rom2\OPTS2RAM.idb
там сначала идут токены 81..DA
а потом 01..1F+
а часть функций с токенами выше DA, нет таблицы, там прямо в парсере идут проверки на токены
loc_3DE8
p.s. там в ENUM есть табличка токенов, удобно
на операнде жмеш M и не число а токен ...
---------- Post added at 15:05 ---------- Previous post was at 15:01 ----------
а вообще - снимаю шляпу !!!!
такая РАБОТА!
FORTH32: https://dl.dropboxusercontent.com/u/...rc-20140520.7z
тут предлагаю обсудить разные тонкости
2FORTH32:
в твоём дизасме
Disk_G_status: db 0 ; DATA XREF: ROM0:049Fw
F701 ; Boot:Force_bootr
F701 ; D7=1 - есть ГЗУ
F701 ; D0=1 - есть дисковод
в моем
RAM:F701 00 FDDFLAG: db 0 ; DATA XREF: RAM:049Fw
RAM:F701 ; RAM:_LoadOSr
RAM:F701 ; 0x01 - FDD FLAG
RAM:F701 ; 0x80 - GZU PAGES 1-3 exist
во первых FDDFLAG эт как бы стандартное название переменной из доки на биос
во вторых D7=1 говорит о том что есть ГЗУ для РАМДИСКА
т.е. есть страницы 1-3, а не только 0
проверку этого флага видел только в 1 (одном) месте
Микродос датированый 1990-01-05
Он есть в \OS\DOS_LAYOUTS\microdos
mdos2_900105_START.kdi.idb
mdos2_900105_ROM1.kdi.idb
mdos2_900105_ROM2.kdi.idb
он сам по себе забавен, он работает и на ОПТС1 и на ОПТС2
и у него есть драйвер рамдиска, который активируется как раза проверкой этого флага (откуда и узнал про него)
и если D7=0 - то диска E просто нет.
кстати, и если загрузить ОПТС1 у которого достаточно ГЗУ, то этого флага там не будет, и рамдиска тоже.
кстати драйвер там вообще лижит отдельно, под АЦЗУ.
он как-бы сбоку прикручен.
---------- Post added at 15:01 ---------- Previous post was at 14:43 ----------
еще сразу то что неправильно
таблица токенов, вторая часть (29E5)
посмотри у меня в roms\OPTS20\rom2\OPTS2RAM.idb
там сначала идут токены 81..DA
а потом 01..1F+
а часть функций с токенами выше DA, нет таблицы, там прямо в парсере идут проверки на токены
loc_3DE8
p.s. там в ENUM есть табличка токенов, удобно
на операнде жмеш M и не число а токен ...
---------- Post added at 15:05 ---------- Previous post was at 15:01 ----------
а вообще - снимаю шляпу !!!!
такая РАБОТА!