1
0
mirror of https://github.com/dschmenk/PLASMA.git synced 2024-06-12 14:29:54 +00:00

Compare commits

...

7 Commits

15 changed files with 324 additions and 142 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

View File

@ -80,6 +80,7 @@ word = $0850,$08D0,$0950,$09D0,$0A50,$0AD0,$0B50,$0BD0
byte textbwmode[] = 2, 16, 0 byte textbwmode[] = 2, 16, 0
byte textclrmode[] = 2, 16, 1 byte textclrmode[] = 2, 16, 1
byte grcharset[] = 1, 0, $7F, $7F, $7F, $7F, $00, $00, $00, $00 byte grcharset[] = 1, 0, $7F, $7F, $7F, $7F, $00, $00, $00, $00
byte a3keyqueue = 0
// //
// Random number for Apple 1 and III. // Random number for Apple 1 and III.
// //
@ -153,6 +154,12 @@ end
def a1keypressed def a1keypressed
return ^$D011 >= 128 ?? ^$D011 :: 0 return ^$D011 >= 128 ?? ^$D011 :: 0
end end
def a1getkey
while not a1keypressed
randnum = randnum + 123
loop
return getc()
end
def a12echo(state) def a12echo(state)
return 0 return 0
end end
@ -278,8 +285,22 @@ def dev_status(devnum, code, list)
end end
def a3keypressed def a3keypressed
byte count byte count
dev_status(cmdsys.devcons, 5, @count) dev_status(cmdsys.devcons, 5, @count)
return count if count
a3keyqueue = getc
fin
return a3keyqueue ?? a3keyqueue | $80 :: 0
end
def a3getkey
byte keycode
repeat
randnum = randnum + 123
a3keypressed
keycode = a3keyqueue
until keycode
a3keyqueue = 0
return keycode
end end
def a3echo(state) def a3echo(state)
return dev_control(cmdsys.devcons, 11, @state) return dev_control(cmdsys.devcons, 11, @state)
@ -362,12 +383,6 @@ end
// //
// Apple 1 and III combined routines. // Apple 1 and III combined routines.
// //
def a13getkey
while not conio:keypressed()
randnum = randnum + 123
loop
return getc()
end
def a13rnd def a13rnd
randnum = (randnum << 1) + randnum + 123 randnum = (randnum << 1) + randnum + 123
return randnum & $7FFF return randnum & $7FFF
@ -378,7 +393,7 @@ end
when MACHID & MACHID_MODEL when MACHID & MACHID_MODEL
is MACHID_III is MACHID_III
conio:keypressed = @a3keypressed conio:keypressed = @a3keypressed
conio:getkey = @a13getkey conio:getkey = @a3getkey
conio:echo = @a3echo conio:echo = @a3echo
conio:home = @a3home conio:home = @a3home
conio:gotoxy = @a3gotoxy conio:gotoxy = @a3gotoxy
@ -391,7 +406,7 @@ when MACHID & MACHID_MODEL
break break
is MACHID_I is MACHID_I
conio:keypressed = @a1keypressed conio:keypressed = @a1keypressed
conio:getkey = @a13getkey conio:getkey = @a1getkey
conio:home = @a1home conio:home = @a1home
conio:gotoxy = @a1gotoxy conio:gotoxy = @a1gotoxy
conio:viewport = @a1viewport conio:viewport = @a1viewport

174
src/mk143 Executable file
View File

@ -0,0 +1,174 @@
cp ../sysfiles/BLANK143.po PLASMA2-SYS.po
./ac.jar -n PLASMA2-SYS.po PLASMA.SYS
#cat ../sysfiles/PRODOS#FF0000 | ./ac.jar -p PLASMA2-SYS.po PRODOS SYS
cat rel/apple/CMD#061000 | ./ac.jar -p PLASMA2-SYS.po CMD BIN $1000
cat rel/apple/CMD128#061000 | ./ac.jar -p PLASMA2-SYS.po CMD128 BIN $1000
cat rel/apple/PLASMA.SYSTEM#FF2000 | ./ac.jar -p PLASMA2-SYS.po PLASMA.SYSTEM SYS
cat rel/apple/PLVM.128#FF2000 | ./ac.jar -p PLASMA2-SYS.po PLVM.128 SYS
cat rel/apple/PLVM16#FF2000 | ./ac.jar -p PLASMA2-SYS.po PLVM16 SYS
cat ../doc/Editor.md | ./ac.jar -ptx PLASMA2-SYS.po EDITOR.README TXT
cat rel/apple/FILEIO#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/FILEIO REL
cat rel/apple/CONIO#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/CONIO REL
cat rel/LINES#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/LINES REL
cat rel/apple/HGRFONT#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/HGRFONT REL
cat rel/apple/HGRTILE#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/HGRTILE REL
cat rel/apple/HGRSPRITE#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/HGRSPRITE REL
cat rel/apple/HGRLIB#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/HGRLIB REL
cat rel/apple/GRLIB#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/GRLIB REL
cat rel/apple/DGRLIB#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/DGRLIB REL
cat rel/apple/COPY#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/COPY REL
cat rel/apple/DEL#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/DEL REL
cat rel/apple/REN#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/REN REL
cat rel/apple/CAT#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/CAT REL
cat rel/apple/NEWDIR#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/NEWDIR REL
cat rel/apple/TYPE#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/TYPE REL
cat rel/apple/MATCHFILES#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/MATCHFILES REL
cat rel/ARGS#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/ARGS REL
cat rel/ED#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/ED REL
cat rel/FIBER#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/FIBER REL
cat rel/LONGJMP#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/LONGJMP REL
cat rel/MEMMGR#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/MEMMGR REL
cat rel/apple/MOUSE#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/MOUSE REL
cat rel/apple/PORTIO#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/PORTIO REL
cat rel/apple/JOYBUZZ#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/JOYBUZZ REL
cat rel/apple/SNDSEQ#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/SNDSEQ REL
cat rel/apple/JIT#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/JIT REL
cat rel/apple/JIT16#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/JIT16 REL
cat rel/apple/JITUNE#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/JITUNE REL
cat rel/apple/ZIPCHIP#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/ZIPCHIP REL
cat rel/LZ4#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/LZ4 REL
cat rel/INT32#FE1000 | ./ac.jar -p PLASMA2-SYS.po sys/INT32 REL
cp ../sysfiles/BLANK143.po PLASMA2-4TH.po
./ac.jar -n PLASMA2-4TH.po PLASMA.4TH
cat rel/HRFORTH#FE1000 | ./ac.jar -p PLASMA2-4TH.po sys/HRFORTH REL
cat rel/HR2FORTH#FE1000 | ./ac.jar -p PLASMA2-4TH.po sys/HR2FORTH REL
cat rel/PLFORTH#FE1000 | ./ac.jar -p PLASMA2-4TH.po sys/PLFORTH REL
cat scripts/plasma.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/PLASMA.4TH TXT
cat scripts/conio.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/CONIO.4TH TXT
cat scripts/fileio.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/FILEIO.4TH TXT
cat scripts/grlib.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/GRLIB.4TH TXT
cat scripts/hgrlib.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/HGRLIB.4TH TXT
cat scripts/int32.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/INT32.4TH TXT
cat scripts/fpu.4th | ./ac.jar -ptx PLASMA2-4TH.po sys/scripts/FPU.4TH TXT
cat scripts/rod.4th | ./ac.jar -ptx PLASMA2-4TH.po bld/scripts/ROD.4TH TXT
cat scripts/bounce.4th | ./ac.jar -ptx PLASMA2-4TH.po bld/scripts/BOUNCE.4TH TXT
cat scripts/hrbounce.4th | ./ac.jar -ptx PLASMA2-4TH.po bld/scripts/HRBOUNCE.4TH TXT
#mkdir sysinet
#mkdir sysinet/sys
#cat rel/INET#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/INET REL
#cat rel/DHCP#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/DHCP REL
#cat rel/ETHERIP#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/ETHERIP REL
#cat rel/apple/UTHERNET2#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/UTHERNET2 REL
#cat rel/apple/UTHERNET#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/UTHERNET REL
#cat rel/TFTPD#FE1000 | ./ac.jar -p PLASMA2-2.1.po sysinet/sys/TFTPD REL
cp ../sysfiles/BLANK143.po PLASMA2-FPSOS.po
./ac.jar -n PLASMA2-FPSOS.po PLASMA.FPSOS
cat ../sysfiles/SOS.KERNEL#0C0000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.KERNEL \$0C
cat ../sysfiles/SOS.DRIVER#0C0000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.DRIVER \$0C
cat rel/apple/SOS.INTERP#050000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.INTERP \$05
cat rel/apple/SOS.CMD#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.CMD REL
cat rel/apple/SOS.INTERPJIT#050000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.INTERPJIT \$05
cat rel/apple/SOS.CMDJIT#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po SOS.CMDJIT REL
cat rel/apple/SOS#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po sys/SOS REL
cat rel/apple/GRAFIX#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po sys/GRAFIX REL
cat rel/FPSTR#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po sys/FPSTR REL
cat rel/FPU#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po sys/FPU REL
cat rel/SANE#FE1000 | ./ac.jar -p PLASMA2-FPSOS.po sys/SANE REL
cat ../sysfiles/FP6502.CODE#060000 | ./ac.jar -p PLASMA2-FPSOS.po sys/FP6502.CODE BIN
cat ../sysfiles/ELEMS.CODE#060000 | ./ac.jar -p PLASMA2-FPSOS.po sys/ELEMS.CODE BIN
#rm -rf demos
#cat rel/INT32TEST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/INT32TEST REL
#cat rel/apple/CONIOTST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/CONIOTST REL
#cat rel/apple/ROD#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/ROD REL
#cat rel/RPNCALC#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/RPNCALC REL
#cat rel/LZ4CAT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/LZ4CAT REL
#cat ../doc/ROGUE.LZ4.BIN | ./ac.jar -p PLASMA2-2.1.po demos/ROGUE.LZ4 BIN
#cat rel/PRIMEGAP#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/PRIMEGAP REL
#cat rel/ROGUE#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/rogue/ROGUE REL
#cat rel/ROGUECOMBAT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/rogue/ROGUECOMBAT REL
#cat rel/ROGUEMAP#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/rogue/ROGUEMAP REL
#cat samplesrc/LEVEL0#040000 | ./ac.jar -ptx PLASMA2-2.1.po demos/rogue/LEVEL0 TXT
#cat samplesrc/LEVEL1#040000 | ./ac.jar -ptx PLASMA2-2.1.po demos/rogue/LEVEL1 TXT
#cat rel/apple/PLAYSEQ#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/music/PLAYSEQ REL
#cat mockingboard/ultima3.seq | ./ac.jar -p PLASMA2-2.1.po demos/music/ULTIMA3.SEQ BIN
#cat mockingboard/startrek.seq | ./ac.jar -p PLASMA2-2.1.po demos/music/STARTREK.SEQ BIN
#cat rel/HTTPD#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/net/HTTPD REL
#cat samplesrc/index.html | ./ac.jar -ptx PLASMA2-2.1.po demos/net/INDEX.HTML TXT
#cat rel/apple/TILETEST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/TILETEST REL
#cat rel/apple/HGRTEST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/HGRTEST REL
#cat rel/apple/GRTEST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/GRTEST REL
#cat rel/apple/DGRTEST#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/DGRTEST REL
#cat rel/apple/SFM#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/spiders/SFM REL
#cat rel/apple/SFMSPRT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/spiders/SFMSPRT REL
#cat rel/apple/SPIPORT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/SPIPORT REL
#cat rel/apple/SDFAT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/SDFAT REL
#cat rel/apple/FATCAT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/FATCAT REL
#cat rel/apple/FATGET#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/FATGET REL
#cat rel/apple/FATPUT#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/FATPUT REL
#cat rel/apple/FATREADDSK#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/FATREADDSK REL
#cat rel/apple/FATWRITEDSK#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple2/sdutils/FATWRITEDSK REL
#cat rel/apple/GFXDEMO#FE1000 | ./ac.jar -p PLASMA2-2.1.po demos/apple3/GFXDEMO REL
#cat samplesrc/APPLE3.PIX#060000 | ./ac.jar -p PLASMA2-2.1.po demos/apple3/APPLE3.PIX BIN
cp ../sysfiles/BLANK143.po PLASMA2-BLD.po
./ac.jar -n PLASMA2-BLD.po PLASMA.BLD
cat rel/PLASM#FE1000 | ./ac.jar -p PLASMA2-BLD.po bld/PLASM REL
cat rel/CODEOPT#FE1000 | ./ac.jar -p PLASMA2-BLD.po bld/CODEOPT REL
cat samplesrc/hello.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/HELLO.PLA TXT
cat samplesrc/int32test.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/INT32TEST.PLA TXT
cat samplesrc/coniotst.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/CONIOTST.PLA TXT
cat samplesrc/grtest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/GRTEST.PLA TXT
cat samplesrc/dgrtest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/DGRTEST.PLA TXT
cat samplesrc/hgrtest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/HGRTEST.PLA TXT
cat samplesrc/tiletest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/TILETEST.PLA TXT
cat samplesrc/fibertest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/FIBERTEST.PLA TXT
cat samplesrc/mousetest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/MOUSETEST.PLA TXT
cat samplesrc/memtest.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/MEMTEST.PLA TXT
cat samplesrc/rod.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/ROD.PLA TXT
#cat samplesrc/sieve.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/SIEVE.PLA TXT
#cat samplesrc/test.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/TEST.PLA TXT
#cat samplesrc/testlib.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/TESTLIB.PLA TXT
cat samplesrc/playseq.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/PLAYSEQ.PLA TXT
cat samplesrc/rpncalc.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/RPNCALC.PLA TXT
cat samplesrc/fatcat.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/FATCAT.PLA TXT
cat samplesrc/gfxdemo.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/GFXDEMO.PLA TXT
cat samplesrc/lz4cat.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/LZ4CAT.PLA TXT
cat samplesrc/sfm.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/SFM.PLA TXT
cat samplesrc/sfmsprt.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/SFMSPRT.PLA TXT
cat samplesrc/fppow.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/FPPOW.PLA TXT
cat utilsrc/apple/mon.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/MON.PLA TXT
cat utilsrc/apple/zipchip.pla | ./ac.jar -ptx PLASMA2-BLD.po bld/samples/ZIPCHIP.PLA TXT
cat inc/args.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/ARGS.PLH TXT
cat inc/matchfiles.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/MATCHFILES.PLH TXT
cat inc/cmdsys.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/CMDSYS.PLH TXT
cat inc/conio.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/CONIO.PLH TXT
cat inc/lines.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/LINES.PLH TXT
cat inc/hgrfont.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/HGRFONT.PLH TXT
cat inc/hgrtile.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/HGRTILE.PLH TXT
cat inc/hgrsprite.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/HGRSPRITE.PLH TXT
cat inc/hgrlib.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/HGRLIB.PLH TXT
cat inc/grlib.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/GRLIB.PLH TXT
cat inc/dgrlib.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/DGRLIB.PLH TXT
cat inc/fiber.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/FIBER.PLH TXT
cat inc/fileio.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/FILEIO.PLH TXT
cat inc/int32.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/INT32.PLH TXT
cat inc/fpstr.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/FPSTR.PLH TXT
cat inc/fpu.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/FPU.PLH TXT
cat inc/mouse.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/MOUSE.PLH TXT
cat inc/inet.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/INET.PLH TXT
cat inc/longjmp.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/LONGJMP.PLH TXT
cat inc/memmgr.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/MEMMGR.PLH TXT
cat inc/sane.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/SANE.PLH TXT
cat inc/joybuzz.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/JOYBUZZ.PLH TXT
cat inc/portio.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/PORTIO.PLH TXT
cat inc/sdfat.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/SDFAT.PLH TXT
cat inc/sndseq.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/SNDSEQ.PLH TXT
cat inc/spiport.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/SPIPORT.PLH TXT
cat inc/testlib.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/TESTLIB.PLH TXT
cat inc/grafix.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/GRAFIX.PLH TXT
cat inc/lz4.plh | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/LZ4.PLH TXT
cat vmsrc/apple/plvmzp.inc | ./ac.jar -ptx PLASMA2-BLD.po bld/inc/PLVMZP.INC TXT

View File

@ -31,7 +31,7 @@ cat rel/FIBER#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/FIBER REL
cat rel/LONGJMP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/LONGJMP REL cat rel/LONGJMP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/LONGJMP REL
cat rel/MEMMGR#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/MEMMGR REL cat rel/MEMMGR#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/MEMMGR REL
cat rel/INET#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/INET REL cat rel/INET#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/INET REL
cat rel/DHCP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/DHcat REL cat rel/DHCP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/DHCP REL
cat rel/ETHERIP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/ETHERIP REL cat rel/ETHERIP#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/ETHERIP REL
cat rel/apple/MOUSE#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/MOUSE REL cat rel/apple/MOUSE#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/MOUSE REL
cat rel/apple/UTHERNET2#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/UTHERNET2 REL cat rel/apple/UTHERNET2#FE1000 | ./ac.jar -p PLASMA-2.1.po sys/UTHERNET2 REL

View File

@ -1,7 +1,4 @@
' CONIOAPI ENDSRC ( Avoid multiple loads ) ' CONIOAPI ENDSRC
( LOADMOD" CONIO" CONIO is already available in plforth )
LOOKUP CONIO CONSTANT CONIOAPI LOOKUP CONIO CONSTANT CONIOAPI
CONIOAPI 3 IFACE PLASMA _HOME : HOME _HOME DROP ; CONIOAPI 3 IFACE PLASMA _HOME : HOME _HOME DROP ;
CONIOAPI 4 IFACE PLASMA _GOTOXY : GOTOXY _GOTOXY DROP ; CONIOAPI 4 IFACE PLASMA _GOTOXY : GOTOXY _GOTOXY DROP ;

View File

@ -1,7 +1,4 @@
' FILEIOAPI ENDSRC ( Avoid multiple loads ) ' FILEIOAPI ENDSRC
( LOADMOD" FILEIO" FILEIO is already available in plforth )
LOOKUP FILEIO CONSTANT FILEIOAPI LOOKUP FILEIO CONSTANT FILEIOAPI
FILEIOAPI 2 IFACE PLASMA GETFILEINFO FILEIOAPI 2 IFACE PLASMA GETFILEINFO
FILEIOAPI 3 IFACE PLASMA SETFILEINFO FILEIOAPI 3 IFACE PLASMA SETFILEINFO

View File

@ -1,11 +1,8 @@
' FPULIB ENDSRC ( Avoid multipe loads ) ' FPULIB ENDSRC
" SANE" LOADMOD" " " SANE" LOADMOD" "
" FPSTR" LOADMOD" " " FPSTR" LOADMOD" "
" FPU" LOADMOD" " " FPU" LOADMOD" "
0 VARIABLE FPERR 0 VARIABLE FPERR
LOOKUP FPU CONSTANT FPULIB LOOKUP FPU CONSTANT FPULIB
FPULIB 0 IFACE PLASMA _FPRESET : FPRESET _FPRESET FPERR ! ; FPULIB 0 IFACE PLASMA _FPRESET : FPRESET _FPRESET FPERR ! ;
FPULIB 1 IFACE PLASMA _FPGETENV : FPGETENV _FPGETENV FPERR ! ; FPULIB 1 IFACE PLASMA _FPGETENV : FPGETENV _FPGETENV FPERR ! ;
@ -77,16 +74,11 @@ FPULIB 65 IFACE PLASMA _FPPOW : FPPOW _FPPOW FPERR ! ;
FPULIB 66 IFACE PLASMA _FPCOMP : FPCOMP _FPCOMP FPERR ! ; FPULIB 66 IFACE PLASMA _FPCOMP : FPCOMP _FPCOMP FPERR ! ;
FPULIB 67 IFACE PLASMA _FPANNUITY : FPANNUITY _FPANNUITY FPERR ! ; FPULIB 67 IFACE PLASMA _FPANNUITY : FPANNUITY _FPANNUITY FPERR ! ;
FPULIB 68 IFACE PLASMA _FPRANDNUM : FPRANDNUM _FPRANDNUM FPERR ! ; FPULIB 68 IFACE PLASMA _FPRANDNUM : FPRANDNUM _FPRANDNUM FPERR ! ;
1 CONSTANT FPSTR.FIXED
1 CONSTANT FPSTR.FIXED ( Fixed count of fractional digits ) 0 CONSTANT FPSTR.FLOAT
0 CONSTANT FPSTR.FLOAT ( Floating count of fractional digits ) 2 CONSTANT FPSTR.STRIP
2 CONSTANT FPSTR.STRIP ( Strip trailing fractional zeros ) 4 CONSTANT FPSTR.EXP
4 CONSTANT FPSTR.EXP ( Force exponential format ) 8 CONSTANT FPSTR.FLEX
8 CONSTANT FPSTR.FLEX ( Flexible switch to EXP format if over/underflow )
: FP. HERE 10 4 FPSTR.FLEX FPSTR! HERE (.") ; : FP. HERE 10 4 FPSTR.FLEX FPSTR! HERE (.") ;
: FPEXT CREATE 10 ALLOT ; : FPEXT CREATE 10 ALLOT ;
FPRESET
FPRESET ( Load SANE code and set up libraries )

View File

@ -1,7 +1,5 @@
' GRMODE ENDSRC ( Avoid multiple loads ) ' GRMODE ENDSRC ( Avoid multiple loads )
" GRLIB" LOADMOD" " " GRLIB" LOADMOD" "
LOOKUP GRPLOT PLASMA GRPLOT LOOKUP GRPLOT PLASMA GRPLOT
LOOKUP GRHLIN PLASMA GRHLIN LOOKUP GRHLIN PLASMA GRHLIN
LOOKUP GRVLIN PLASMA GRVLIN LOOKUP GRVLIN PLASMA GRVLIN
@ -15,4 +13,4 @@ LOOKUP GRMODE PLASMA GRMODE
LOOKUP GRSHOW PLASMA GRSHOW LOOKUP GRSHOW PLASMA GRSHOW
LOOKUP GRSWAP PLASMA GRSWAP LOOKUP GRSWAP PLASMA GRSWAP
LOOKUP GRDRAWBUF PLASMA GRDRAWBUF LOOKUP GRDRAWBUF PLASMA GRDRAWBUF
LOOKUP GRCOLOR PLASMA GRCOLOR LOOKUP GRCOLOR PLASMA GRCOLOR

View File

@ -1,7 +1,5 @@
' HGRMODE ENDSRC ( Avoid multiple loads ) ' HGRMODE ENDSRC
" HGRLIB" LOADMOD" " " HGRLIB" LOADMOD" "
LOOKUP HGRPLOT PLASMA HGRPLOT LOOKUP HGRPLOT PLASMA HGRPLOT
LOOKUP HGRORPLOT PLASMA HGRORPLOT LOOKUP HGRORPLOT PLASMA HGRORPLOT
LOOKUP HGRXORPLOT PLASMA HGRXORPLOT LOOKUP HGRXORPLOT PLASMA HGRXORPLOT
@ -22,4 +20,4 @@ LOOKUP HGRMODE PLASMA HGRMODE
LOOKUP HGRSHOW PLASMA HGRSHOW LOOKUP HGRSHOW PLASMA HGRSHOW
LOOKUP HGRSWAP PLASMA HGRSWAP LOOKUP HGRSWAP PLASMA HGRSWAP
LOOKUP HGRDRAWBUF PLASMA HGRDRAWBUF LOOKUP HGRDRAWBUF PLASMA HGRDRAWBUF
LOOKUP HGRCOLOR PLASMA HGRCOLOR LOOKUP HGRCOLOR PLASMA HGRCOLOR

View File

@ -1,36 +1,33 @@
' DVAR ENDSRC ( Avoid multiple loads ) ' DVAR ENDSRC
" INT32" LOADMOD" " " INT32" LOADMOD" "
LOOKUP ZERO32 PLASMA ZERO32
LOOKUP ZERO32 PLASMA ZERO32 ( -- ) LOOKUP ZEXT16TO32 PLASMA ZEXT32
LOOKUP ZEXT16TO32 PLASMA ZEXT32 ( -- ) LOOKUP NEG32 PLASMA NEG32
LOOKUP NEG32 PLASMA NEG32 ( -- ) LOOKUP LOAD32 PLASMA LOAD32
LOOKUP LOAD32 PLASMA LOAD32 ( i32ptr -- ) LOOKUP LOADI16 PLASMA LOAD16
LOOKUP LOADI16 PLASMA LOAD16 ( imm16 -- ) LOOKUP STORE32 PLASMA STORE32
LOOKUP STORE32 PLASMA STORE32 ( i32ptr -- ) LOOKUP ADD32 PLASMA ADD32
LOOKUP ADD32 PLASMA ADD32 ( i32ptr -- ) LOOKUP ADDI16 PLASMA ADD16
LOOKUP ADDI16 PLASMA ADD16 ( imm16 -- ) LOOKUP SUB32 PLASMA SUB32
LOOKUP SUB32 PLASMA SUB32 ( i32ptr -- ) LOOKUP SUBI16 PLASMA SUB16
LOOKUP SUBI16 PLASMA SUB16 ( imm16 -- ) LOOKUP SHL32 PLASMA SHL32
LOOKUP SHL32 PLASMA SHL32 ( imm8 -- ) LOOKUP SHR32 PLASMA SHR32
LOOKUP SHR32 PLASMA SHR32 ( imm8 -- ) LOOKUP MUL32 PLASMA MUL32
LOOKUP MUL32 PLASMA MUL32 ( i32ptr -- ) LOOKUP MULI16 PLASMA MUL16
LOOKUP MULI16 PLASMA MUL16 ( imm16 -- ) LOOKUP DIV32 PLASMA DIV32
LOOKUP DIV32 PLASMA DIV32 ( i32ptr -- rem32 ) LOOKUP DIVI16 PLASMA DIV16
LOOKUP DIVI16 PLASMA DIV16 ( imm16 -- rem32 ) LOOKUP ISEQ32 PLASMA ISEQ32
LOOKUP ISEQ32 PLASMA ISEQ32 ( i32ptr -- f) LOOKUP ISEQI16 PLASMA ISEQ16
LOOKUP ISEQI16 PLASMA ISEQ16 ( imm16 -- f) LOOKUP IDGE32 PLASMA ISGE32
LOOKUP IDGE32 PLASMA ISGE32 ( i32ptr -- f) LOOKUP ISGEI16 PLASMA ISGE16
LOOKUP ISGEI16 PLASMA ISGE16 ( imm16 -- f) LOOKUP ISLE32 PLASMA ISLE32
LOOKUP ISLE32 PLASMA ISLE32 ( i32ptr -- f) LOOKUP ISLEI16 PLASMA ISLE16
LOOKUP ISLEI16 PLASMA ISLE16 ( imm16 -- f) LOOKUP ISGT32 PLASMA ISGT32
LOOKUP ISGT32 PLASMA ISGT32 ( i32ptr -- f) LOOKUP ISGTI16 PLASMA ISGT16
LOOKUP ISGTI16 PLASMA ISGT16 ( imm16 -- f) LOOKUP ISLT32 PLASMA ISLT32
LOOKUP ISLT32 PLASMA ISLT32 ( i32ptr -- f) LOOKUP ISLTI16 PLASMA ISLT16
LOOKUP ISLTI16 PLASMA ISLT16 ( imm16 -- f ) LOOKUP I32TOS PLASMA I32TOS
LOOKUP I32TOS PLASMA I32TOS ( i32ptr strptr -- strptr ) LOOKUP PUTI32 PLASMA PUTI32
LOOKUP PUTI32 PLASMA PUTI32 ( i32ptr -- )
: DVAR CREATE 4 ALLOT ; : DVAR CREATE 4 ALLOT ;
DVAR _DOP1 DVAR _DOP1
DVAR _DOP2 DVAR _DOP2

View File

@ -1,4 +1,4 @@
' IFACE ENDSRC ( Avoid multiple loads ) ' IFACE ENDSRC
: IFACE 2 * + @ ; : IFACE 2 * + @ ;
LOOKUP CMDSYS 0 IFACE CONSTANT PLASMAVER LOOKUP CMDSYS 0 IFACE CONSTANT PLASMAVER
LOOKUP CMDSYS 2 IFACE CONSTANT CMDLINE LOOKUP CMDSYS 2 IFACE CONSTANT CMDLINE
@ -7,13 +7,13 @@ LOOKUP STRCPY PLASMA STRCPY
LOOKUP STRCAT PLASMA STRCAT LOOKUP STRCAT PLASMA STRCAT
LOOKUP TOUPPER PLASMA TOUPPER LOOKUP TOUPPER PLASMA TOUPPER
LOOKUP HEAPAVAIL PLASMA FREEMEM LOOKUP HEAPAVAIL PLASMA FREEMEM
: LOADMOD ( modulename paramstr -- ) : LOADMOD
CMDLINE " . " STRCPY DROP ( Module name ) CMDLINE " . " STRCPY DROP
CMDLINE SWAP STRCAT DROP ( Parameter string ) CMDLINE SWAP STRCAT DROP
EXECMOD 0< ABORT" Failed to load module" ; EXECMOD 0< ABORT" Failed to load module" ;
: LOADMOD" ( modulename -- ) : LOADMOD"
PAD SWAP STRCPY ( Move module name out of the way in case its immediate ) PAD SWAP STRCPY
CHAR " WORD ( Build a string from input ) CHAR " WORD
LOADMOD ; LOADMOD ;
: EDIT " ED" " " LOADMOD ; : EDIT " ED" " " LOADMOD ;
: EDIT" " ED" LOADMOD" ; : EDIT" " ED" LOADMOD" ;

View File

@ -94,7 +94,7 @@ const interponly_flag = $80
// //
// Predefine instrinsics // Predefine instrinsics
// //
predef _swap_(a,b)#2, _dashdup_(a)#1, _over_(a,b,c)#4, _rot_(a,b,c)#3 predef _swap_(a,b)#2, _dashdup_(a)#1, _over_(a,b)#3, _rot_(a,b,c)#3
predef _abs_(a)#1, _max_(a,b)#1, _min_(a,b)#1, _wplusset_(a,b)#0 predef _abs_(a)#1, _max_(a,b)#1, _min_(a,b)#1, _wplusset_(a,b)#0
predef _ffa_(a)#1, _lfa_(a)#1, _hfa_(a)#1, _cfa_(a)#1, _pfa_(a)#1, _allot_(a)#0 predef _ffa_(a)#1, _lfa_(a)#1, _hfa_(a)#1, _cfa_(a)#1, _pfa_(a)#1, _allot_(a)#0
predef _branch_#0, _0branch_(a)#0, _if_#0, _else_#0, _then_#0 predef _branch_#0, _0branch_(a)#0, _if_#0, _else_#0, _then_#0
@ -105,9 +105,9 @@ predef _create_#0, _itcdoes_(a)#0, _does_#0, _compoff_#0, _compon_#0
predef _compile_#0, _dictaddw_(a)#0, _dictaddb_(a)#0, _colon_#0, _semi_#0 predef _compile_#0, _dictaddw_(a)#0, _dictaddb_(a)#0, _colon_#0, _semi_#0
predef _componly_#0, _interponly_#0, _immediate_#0, _exit_#0, _pad_#1, _trailing_(a,b)#2 predef _componly_#0, _interponly_#0, _immediate_#0, _exit_#0, _pad_#1, _trailing_(a,b)#2
predef _tors_(a)#0, _fromrs_#1, _toprs_#1, _lookup_#1 predef _tors_(a)#0, _fromrs_#1, _toprs_#1, _lookup_#1
predef _move_(a,b,c)#0, _fill_(a,b,c)#0, _plasma_(a)#0 predef _cmove_(a,b,c)#0, _move_(a,b,c)#0, _fill_(a,b,c)#0, _plasma_(a)#0
predef _var_(a)#0, _const_(a)#0, _lit_#1, _slit_#1, _find_(a)#2 predef _var_(a)#0, _const_(a)#0, _lit_#1, _slit_#1, _find_(a)#2
predef _tick_#0, _forget_#0, _terminal_#1, _prat_(a)#0 predef _tick_#0, _forget_#0, _terminal_#1, _key_#1, _prat_(a)#0
predef _blank_#0, _char_#0, _str_#0, _prstr_#0, _prpstr_#0 predef _blank_#0, _char_#0, _str_#0, _prstr_#0, _prpstr_#0
predef _prval_(a)#0, _prbyte_(a)#0, _prhex_(a)#0, _accept_(a,b)#1, _type_(a,b)#0 predef _prval_(a)#0, _prbyte_(a)#0, _prhex_(a)#0, _accept_(a,b)#1, _type_(a,b)#0
predef _vlist_#0, _tron_#0, _troff_#0, _stepon_#0, _stepoff_#0 predef _vlist_#0, _tron_#0, _troff_#0, _stepon_#0, _stepoff_#0
@ -295,24 +295,28 @@ byte = 0
word = @d_toprstk, 0, @_lookup_ word = @d_toprstk, 0, @_lookup_
// PLASMA LINKEAGE // PLASMA LINKEAGE
char d_plasma = "PLASMA" char d_plasma = "PLASMA"
byte = imm_flag byte = interponly_flag
word = @d_lookup, 0, @_plasma_ word = @d_lookup, 0, @_plasma_
// VARIABLE // VARIABLE
char d_var = "VARIABLE" char d_var = "VARIABLE"
byte = imm_flag byte = interponly_flag
word = @d_plasma, 0, @_var_ word = @d_plasma, 0, @_var_
// CONSTANT // CONSTANT
char d_const = "CONSTANT" char d_const = "CONSTANT"
byte = imm_flag byte = interponly_flag
word = @d_var, 0, @_const_ word = @d_var, 0, @_const_
// CMOVE
char d_cmove = "CMOVE"
byte = showcr_flag
word = @d_const, 0, @_cmove_
// MOVE // MOVE
char d_move = "MOVE" char d_move = "MOVE"
byte = 0 byte = showcr_flag
word = @d_const, 0, @_move_ word = @d_cmove, 0, @_move_
// FILL // FILL
char d_fill = "FILL" char d_fill = "FILL"
byte = 0 byte = showcr_flag
word = @d_move, 0, @_fill_ word = @d_cmove, 0, @_fill_
// HERE // HERE
char d_here = "HERE" char d_here = "HERE"
byte = 0 byte = 0
@ -323,7 +327,7 @@ byte = 0
word = @d_here, 0, @_pad_ word = @d_here, 0, @_pad_
// ALLOT // ALLOT
char d_allot = "ALLOT" char d_allot = "ALLOT"
byte = 0 byte = showcr_flag
word = @d_pad, 0, @_allot_ word = @d_pad, 0, @_allot_
// BRANCH ( not in vocabulary ) // BRANCH ( not in vocabulary )
char d_branch = "(BRANCH)" char d_branch = "(BRANCH)"
@ -495,7 +499,7 @@ byte = param_flag
word = 0, 0, @_lit_ word = 0, 0, @_lit_
// COMPILED LITERAL VALUE FROM STACK // COMPILED LITERAL VALUE FROM STACK
char d_literal = "LITERAL" char d_literal = "LITERAL"
byte = imm_flag byte = imm_flag | componly_flag
word = @d_tick, 0, @_compliteral_ word = @d_tick, 0, @_compliteral_
// ?TERMINAL // ?TERMINAL
char d_terminal = "?TERMINAL" char d_terminal = "?TERMINAL"
@ -504,7 +508,7 @@ word = @d_literal, 0, @_terminal_
// KEY // KEY
char d_key = "KEY" char d_key = "KEY"
byte = 0 byte = 0
word = @d_terminal, 0, @getc word = @d_terminal, 0, @_key_
// ACCEPT // ACCEPT
char d_accept = "ACCEPT" char d_accept = "ACCEPT"
byte = 0 byte = 0
@ -666,11 +670,11 @@ byte = 0
word = @d_stepoff, 0, @_brk_ word = @d_stepoff, 0, @_brk_
// BREAK ON // BREAK ON
char d_brkon = "BRKON" char d_brkon = "BRKON"
byte = imm_flag byte = interponly_flag
word = @d_brk, 0, @_brkon_ word = @d_brk, 0, @_brkon_
// BREAK OFF // BREAK OFF
char d_brkoff = "BRKOFF" char d_brkoff = "BRKOFF"
byte = 0 byte = interponly_flag
word = @d_brkon, 0, @_brkoff_ word = @d_brkon, 0, @_brkoff_
// COMPILE USING ITC // COMPILE USING ITC
char d_itc = "ITC" char d_itc = "ITC"
@ -928,18 +932,18 @@ end
def _execword_(dentry)#0 def _execword_(dentry)#0
when conio:keypressed() when conio:keypressed()
is $83 // CTRL-C is $83 // CTRL-C
getc // Clear KB conio:getkey() // Clear KB
brkhandle(dentry) brkhandle(dentry)
break break
is $94 // CTRL-T is $94 // CTRL-T
getc // Clear KB strobe conio:getkey() // Clear KB
state = state ^ trace_flag state = state ^ trace_flag
break break
wend wend
if state & trace_flag if state & trace_flag
showtrace(dentry) showtrace(dentry)
if state & step_flag if state & step_flag
if getc == $03 // CTRL-C if conio:getkey() == $03 // CTRL-C
brkhandle(dentry) brkhandle(dentry)
fin fin
fin fin
@ -1067,8 +1071,8 @@ def _dashdup_(a)#1
if a; (@push)(a)#0; fin if a; (@push)(a)#0; fin
return a return a
end end
def _over_(a,b,c)#4 def _over_(a,b)#3
return a,b,c,a return a,b,a
end end
def _rot_(a,b,c)#3 def _rot_(a,b,c)#3
return b,c,a return b,c,a
@ -1296,19 +1300,14 @@ def _compile_#0
fin fin
end end
def _compoff_#0 def _compoff_#0
if state & comp_flag savestate = state & comp_flag
savestate = state & comp_flag state = state & ~comp_flag
state = state & ~comp_flag
else
puts("[ Not compiling\n")
_quit_
fin
end end
def _compon_#0 def _compon_#0
state = state | savestate state = state | savestate
savestate = 0 savestate = 0
if not (state & comp_flag) if not (state & comp_flag)
puts("[ Not compiling\n") puts("] Not compiling\n")
_quit_ _quit_
fin fin
end end
@ -1540,7 +1539,10 @@ def _accept_(a,b)#1
return len return len
end end
def _terminal_#1 def _terminal_#1
return ^$C000 > 127 return conio:keypressed() > 127
end
def _key_#1
return conio:getkey()
end end
def _word_(a)#1 def _word_(a)#1
word wordptr word wordptr
@ -1748,7 +1750,7 @@ def _show_#0
w = *pfa w = *pfa
fin fin
if conio:keypressed() if conio:keypressed()
getc; getc conio:getkey(); conio:getkey()
fin fin
loop loop
fin fin
@ -1831,27 +1833,36 @@ end
def _comment_#0 def _comment_#0
nextword(')') nextword(')')
end end
def _vlist_#0 def typelist(typestr, typemask, type)#0
word d word d
byte tab byte tab
tab = 0 puts(typestr)
tab = ^typestr
d = vlist d = vlist
while d while d
tab = tab + 1 + ^d if (typemask & ^_ffa_(d)) == type
if tab > 39 tab = tab + 1 + ^d
putln; if tab > 39
tab = ^d putln;
else tab = ^d
puts(" ") else
fin puts(" ")
puts(d) fin
if conio:keypressed() puts(d)
getc; getc if conio:keypressed(); conio:getkey(); conio:getkey(); fin
fin fin
d = *_lfa_(d) d = *_lfa_(d)
loop loop
end end
def _vlist_#0
putln
typelist("Compile only: ", componly_flag, componly_flag)
putln; putln
typelist("Interpret only: ", interponly_flag, interponly_flag)
putln; putln
typelist("Both: ", componly_flag | interponly_flag, 0)
end
// //
// Quit // Quit
// //

View File

@ -291,26 +291,6 @@ DINTRP PHP
STX OPPAGE STX OPPAGE
LDY #$00 LDY #$00
JMP FETCHOP JMP FETCHOP
!AS
IINTRPX PHP
PLA
STA PSR
SEI
CLC ; SWITCH TO NATIVE MODE
XCE
+ACCMEM16 ; 16 BIT A/M
LDY #$01
LDA (TOS,S),Y
DEY
STA IP
PLA
STX ESP
TSX
STX HWSP
STX ALTRDON
LDX #>OPXTBL
STX OPPAGE
JMP FETCHOP
;************************************************************ ;************************************************************
;* * ;* *
;* 'BYE' PROCESSING - COPIED TO $1000 ON PRODOS BYE COMMAND * ;* 'BYE' PROCESSING - COPIED TO $1000 ON PRODOS BYE COMMAND *
@ -481,6 +461,29 @@ OPXTBL !WORD ZERO,CN,CN,CN,CN,CN,CN,CN ; 00 02
!WORD ADDLBX,ADDLWX,ADDABX,ADDAWX,IDXLBX,IDXLWX,IDXABX,IDXAWX ; B0 B2 B4 B6 B8 BA BC BE !WORD ADDLBX,ADDLWX,ADDABX,ADDAWX,IDXLBX,IDXLWX,IDXABX,IDXAWX ; B0 B2 B4 B6 B8 BA BC BE
!WORD NATV,JUMPZ,JUMP ; C0 C2 C4 !WORD NATV,JUMPZ,JUMP ; C0 C2 C4
;* ;*
;* INDIRECT ENTRY INTO INTERPRETER
;*
!AS
IINTRPX PHP
PLA
STA PSR
SEI
CLC ; SWITCH TO NATIVE MODE
XCE
+ACCMEM16 ; 16 BIT A/M
LDY #$01
LDA (TOS,S),Y
DEY
STA IP
PLA
STX ESP
TSX
STX HWSP
STX ALTRDON
LDX #>OPXTBL
STX OPPAGE
JMP FETCHOP
;*
;* JIT PROFILING ENTRY INTO INTERPRETER ;* JIT PROFILING ENTRY INTO INTERPRETER
;* ;*
!AS !AS
@ -616,7 +619,7 @@ _MULSLP ASL
BNE _MULSLP BNE _MULSLP
STA NOS,S ; PROD STA NOS,S ; PROD
JMP DROP JMP DROP
;
;MUL LDX #$04 ;MUL LDX #$04
; LDA NOS,S ; LDA NOS,S
; EOR #$FFFF ; EOR #$FFFF

BIN
sysfiles/BLANK143.po Normal file

Binary file not shown.