Az általunk ismert legrégebbi verzió a 0.3-as, ami csak 2006-ban került elő:
http://enterpriseforever.com/userpix/12_exdos03_1.pngAz első kiadott verzió az 1.0, ami a gyári EXDOS kártyákon volt.
http://enterpriseforever.com/userpix/12_exdos10_1.pngA kód növekedése miatt több parancs is ki lett véve, többségük az ISDOS-ban lett elérhető: ATTR, EXIT, ATDIR, ASSIGN, BUFFERS, MAPDISK. Ezt már korábban is tudtuk, most felfedeztem, hogy volt még egy speciális rendszerparancs is: "EXDOS",0FEH, ami bővítő meghajtó rendszerbecsatolására való, a korábban már beazonosított FISH 24-es hívás használatával.
A következő verzió volt az 1.2 (szintén 2006-ban került elő), ami az 1.0 továbbfejlesztett, javított verziója, de nem került kiadásra, valószínűleg az angol cég összeomlása miatt. Azonban ez a kód került a németekhez, amit forrás szöveg szintjén módosítottak, gyakorlatilag minden szövegkiíró rutinba beletettek egy elágazást: lekérdezi a 144-es EXOS változót, és ettől függően veszi az angol vagy a német szöveget. Az eredeti angol tömörített szövegrendszert kidobták, és a második szegmensre rakták szimpla szövegként az angol és német szövegtáblákat. Billentyűfigyelésnél (Retry,stb) szintén beletették ezt a 144-es változó lekérdezős elágazást.
Őszintén szólva meglehetősen primitív programozással oldották meg, pl a sok 144-es változó lekérdezést ki lehetet volna rakni egy szubrutinba, és CALL-al hívogatni ahonnan kell, sok bájtot megtakarítva. És csak az egészen kezdő programozó használnak különálló LD B,n LD C,n utasításokat az egy bájttal rövidebb LD BC,nn helyett
Ez a kétnyelvű, 1.3-as verzió került a német EXDOS-al egybeépített floppy meghajtókba. A sok plusz szöveg miatt a ROM mérete immár 32K, rengeteg kihasználatlan hellyel. A parancskészlet az 1.0-hoz képest változatlan.
http://enterpriseforever.com/userpix/12_exdos13_1.pngEzután jön az általunk leginkább ismert angol-magyar verzió:
Az az egyszerűbb része, hogy a német szövegek magyarra lettek cserélve. Sokkal izgalmasabb, hogy 4 korábban kivett parancs visszakerült: ATTR, ATDIR, ASSIGN, MAPDISK
http://enterpriseforever.com/userpix/12_exdos13h_1.pngRégen, mivel akkor még nem tudtam, hogy ezek valaha bent voltak az EXDOS-ban, azt hittem, hogy az ISDOS-ból lettek kiszedve, és berakva az EXDOS ROM-ba. Sőt egészen mostanáig ebben a hitben voltam!
A módosítások binárisan történtek az 1.3-on, a plusz parancsok miatt hosszabb parancstábla átkerült a ROM végére, és az eredeti parancstábla helyére kerültek a végrehajtó kódok, ill. a kód egy része a második szegmensre került.
Most az 1.4 miatt elkezdtem gatyába rázni az 1.3-ra rakodott plusz módosításokat, egyrészt, hogy ne szétszórva legyenek, hanem egy tömbben, hogy a szabad hely egyben legyen, ami kelleni fog majd a FAT16 mókához. Másrészt kell fordítható áthelyezhető módon, hogy az SD cartridge memóriakonfigurációjához is hozzá legyen szabva.
Szóval visszafordítottam ezeket plusz parancsokat is kiderült, hogy semmi közük az ISDOS-hoz, annál inkább hasonlítanak a 0.3-ban lévőkhüz, bár nem azonosak. A fő lényeg, hogy rengeteg belső EXDOS szubrutint használnak, a parancsszöveg feldolgozáshoz (paraméterek kielemzése, számparaméter konvertálása, stb), ill. szövegkiíráshoz is.
Ezt így csak az tudta megcsinálni, aki rendelkezett legalább egy EXDOS forrásszöveggel! Vélhetőleg valamely 0.x verzióval, amiben benne voltak ezek a parancsok. Gondolom, ha lett volna 1.3 forrása, akkor nem bináris piszkálással kerültek volna be. De ha már ismert egy verziót, akkor az alapján meg lehetett keresni az ugyanolyan feldolgozó rutinokat az 1.3-ban, és átültetni a parancsokat.
A nagy kérdés, hogy ki lehet az, akinek ilyen információk voltak a keze ügyében? Én csak Kopácsyékra tudok tippelni.
Az 1.4-be most visszakerült minden ami a 0.3-ban benne volt (utálom ha valami régen tudott valamit, aztán meg már nem
), vagyis az EXIT, BUFFERS és az "EXDOS",0FEh (ez utóbbi lehetőség a korábbi verziókban a bug miatt amúgy is hibásan működött volna). Mindez fordítható, "defregmentált" kódként, ami a további fejlesztéshez elengedhetetlen.
Következő cél a szövegrendszer: sajnos a magyar EP-sítés eléggé össze lett kavarva sokféle nem kompatibilis karakterkészletekkel
Az a tervem, hogy a szövegek HFONT-os ként lesznek tárolva (itt meg van minden ékezet), kiíráskor mintát vesz a karakterkészletből, hogy eldöntse melyik aktív, és ennek megfelelően konvertálja a karaktereket.