Tömörített ROM fájlrendszer készítése (ROM: eszköz)
A konvertálás menete
Első lépésben a programo(ka)t ROM: eszköz használatára kell módosítani, amihez segítség a linkeknél található epfileio.rom változat, amelyben az eszköz neve FILE: helyett ROM:, és nem alapértelmezett.
Ezt követi a romfsdev.asm fordítása (SjASM 0.39g6), majd a csomagolás a romload.lua segítségével. Az utóbbihoz a script indítása után a ROM-ra másolandó programokat egyszerűen be kell tölteni LOAD paranccsal, figyelve arra, hogy minden szükséges fájl betöltődjön (ez utántöltős játékoknál okozhat problémát), majd az utolsó után load "ROM:_EOF" paranccsal menthető a kész ROM. A script a monitor ablakban kiírja a tömörített méreteket, és az esetleges hibákat.
Paraméterek
A romfsdev.asm több funkciót is tartalmaz, amelyek feltételesen fordíthatók:
- NO_SPECIAL_FUNC: Ha 0, akkor az eszköz támogatja az EXOS 11 hívást, amely tetszőleges alfunkciószámra visszaadja a fájlrendszer kezdőcímét a C (szegmens) és DE (cím az 1. lapon) regiszterekben. A tiltása 8 bájt helyet takarít meg.
- NO_ROMDIR_CMD: A :ROMDIR parancs tiltása ha nem 0, 70 bájt méretcsökkenés.
- NO_HELP_STRING: A :HELP parancs tiltása ha nem 0. Az engedélyezéséhez a :ROMDIR támogatására is szükség van, és 143-174 bájt területet igényel.
- NO_START_FILE: Ha 0, akkor az Enterprise logónál az "1" billentyűvel betölthető az első fájl, amely egyébként "*" néven is megnyitható. A tiltása 39 bájttal csökkenti a ROM méretét.
- NO_BORDER_FX: Keretcsíkozás tiltása ha nem 0, az engedélyezése 4 bájtot igényel.
A romload.lua elején is található néhány fontos paraméter, itt adhatók meg a konvertálás során használt fájlnevek és elérési útvonalak. Az outputOffset állítására nincs szükség, ha a ROM kód mérete megállapítható lefordított romfsdev.asm alapján.
A FILE bővítés ROM: változata
Ez megtalálható a romfile.asm forrás fájlban, EnterMice támogatást is tartalmaz, ami hely megtakarítása céljára tiltható. A start.asm erre épülő egyszerű példa program, lefordítva érdemes lehet első fájlként beépíteni több programos ROM esetén.
Linkek
A romload.lua, romfsdev.asm, és romfile.asm aktuális verziója.