This is an old revision of the document!
V ASe je kompilacia do stranok mozna, aj ked to nedosiahnes jednym prikazom… Ako vieme, vystup ASu je bytecode subor typu [b]*.p[/b], ktory moze obsahovat iba 65536 vystupnych bajtov a z ktoreho si nasledne vieme nasekat vystup do binariek pomocou [b]p2bin[/b]. Cize, ak si svoj zdrojak pripravime napr. takto:
cpu z80undoc relaxed on page 0 org 0 ; priestor od 49152 v pomalej banke 1 (17) ;------------------------------------------------------------------------------ phase $C000 ; to, co by bolo povodne ako org, kde sa bude kod vykonavat ; kod ds $4000-($-$C000) ; kvoli vyplneniu zostatkoveho miesta az do konca banky dephase ; priestor od 49152 v pomalej banke 3 (19) ;------------------------------------------------------------------------------ phase $C000 ; kod ds $4000-($-$C000) ; bytecode musi byt totiz presne na bajt vyplneny na 16k bloky dephase ; priestor od 49152 v rychlej banke 4 (20) ;------------------------------------------------------------------------------ phase $C000 ; kod ds $4000-($-$C000) dephase ; priestor od 49152 v rychlej banke 6 (22) ;------------------------------------------------------------------------------ phase $C000 ; napriklad binclude "hudba.bin" ds $4000-($-$C000) dephase
Nasledne si nasekame vystup do binariek jednotlivych bank pomocou parametra -r ako range, parameter -l urcuje, cim vyplnit prazdne miesto a -k na konci zmaze za sebou samotne *.p. Takze bude to vyzerat nejak takto… v kompilacnom makefile:
%.bin: priklad128pages.p p2bin priklad128pages.p page1.bin -l 0 -r \$$0000-\$$3fff > /dev/null p2bin priklad128pages.p page3.bin -l 0 -r \$$4000-\$$7fff > /dev/null p2bin priklad128pages.p page4.bin -l 0 -r \$$8000-\$$bfff > /dev/null p2bin priklad128pages.p page6.bin -l 0 -r \$$c000-\$$ffff -k > /dev/null
…alebo v kompilacnom batch skripte:
p2bin priklad128pages.p page1.bin -l 0 -r $0000-$3fff > /dev/null p2bin priklad128pages.p page1.bin -l 0 -r $4000-$7fff > /dev/null p2bin priklad128pages.p page1.bin -l 0 -r $8000-$bfff > /dev/null p2bin priklad128pages.p page1.bin -l 0 -r $c000-$ffff -k > /dev/null
Na zaver musim iba pripomenut, ze v ASe prikaz PAGE sluzi na ovladanie strankovania vo vystupnom listingu. Preto vsetky moje kody obsahuju PAGE 0, aby sa mi v *.lst neobjavovali rusive deliace ciary. Tj. nema to nic spolocne so strankami Speccy 128k ;)
