1
0
mirror of https://github.com/dschmenk/PLASMA.git synced 2026-01-22 18:15:59 +00:00

Increase symbol table and increase free memory for 64K VM

This commit is contained in:
David Schmenk
2025-12-03 19:57:24 -08:00
parent 6b4017abb1
commit c4b98f1866
6 changed files with 38 additions and 26 deletions

Binary file not shown.

View File

@@ -10,16 +10,16 @@ cat rel/ARGS#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/ARGS R
cat rel/LONGJMP#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/LONGJMP REL
cat rel/apple/INITSLOT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/INITSLOT REL
cat rel/HRFORTH#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HRFORTH REL
cat rel/HR2FORTH#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HR2FORTH REL
#cat rel/HR2FORTH#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HR2FORTH REL
cat rel/TX2FORTH#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/TX2FORTH REL
cat rel/PLFORTH#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/PLFORTH REL
cat rel/apple/COPY#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/COPY REL
cat rel/apple/DEL#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/DEL REL
cat rel/apple/REN#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/REN REL
cat rel/apple/CAT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/CAT REL
#cat rel/apple/COPY#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/COPY REL
#cat rel/apple/DEL#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/DEL REL
#cat rel/apple/REN#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/REN REL
#cat rel/apple/CAT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/CAT REL
#cat rel/apple/TYPE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/TYPE REL
#cat rel/apple/NEWDIR#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/NEWDIR REL
cat rel/apple/MATCHFILES#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/MATCHFILES REL
#cat rel/apple/MATCHFILES#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/MATCHFILES REL
cat rel/INT32#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/INT32 REL
cat rel/apple/PORTIO#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/PORTIO REL
#cat rel/FPSTR#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/FPSTR REL
@@ -29,24 +29,30 @@ cat rel/apple/PORTIO#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/PORTIO
#cat ../sysfiles/ELEMS.CODE#060000 | java -jar ac.jar -p PLFORTH.PO sys/ELEMS.CODE BIN
cat rel/ED#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/ED REL
cat rel/LINES#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/LINES REL
cat rel/SINCOS#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/SINCOS REL
cat rel/TURTLE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/TURTLE REL
cat rel/apple/HGRFONT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRFONT REL
cat rel/apple/HGRTILE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRTILE REL
cat rel/apple/HGRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRLIB REL
cat rel/apple/GRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/GRLIB REL
cat rel/apple/DGRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/DGRLIB REL
#cat rel/apple/DGRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/DGRLIB REL
cat scripts/plasma.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/PLASMA.4TH TXT
cat scripts/machid.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/MACHID.4TH TXT
cat scripts/conio.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/CONIO.4TH TXT
cat scripts/fileio.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/FILEIO.4TH TXT
cat scripts/grlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/GRLIB.4TH TXT
cat scripts/dgrlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/DGRLIB.4TH TXT
#cat scripts/dgrlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/DGRLIB.4TH TXT
cat scripts/hgrlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/HGRLIB.4TH TXT
cat scripts/hgrfont.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/HGRFONT.4TH TXT
cat scripts/int32.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/INT32.4TH TXT
cat scripts/portio.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/PORTIO.4TH TXT
cat scripts/turtle.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/TURTLE.4TH TXT
#cat scripts/fpu.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/FPU.4TH TXT
cat scripts/rod.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/ROD.4TH TXT
cat scripts/bounce.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/BOUNCE.4TH TXT
cat scripts/dbounce.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/DBOUNCE.4TH TXT
#cat scripts/dbounce.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/DBOUNCE.4TH TXT
cat scripts/hrbounce.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/HRBOUNCE.4TH TXT
#cat scripts/hrplot.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/HRPLOT.4TH TXT
cat scripts/grturtle.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/GRTURTLE.4TH TXT
cat scripts/hrturtle.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/HRTURTLE.4TH TXT
#cat scripts/hrplot.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/HRPLOT.4TH TXT
echo "+PLFORTH PLASMA.4TH" | java -jar ac.jar -ptx PLFORTH.PO AUTORUN TXT

View File

@@ -1,4 +1,5 @@
' HGRPUTSTR ?ENDSRC
" HGRTILE" LOADMOD" "
" HGRFONT" LOADMOD" "
LOOKUP TILEDRAWBUF PLASMA TILEDRAWBUF
LOOKUP HGRPUTSTR PLASMA HGRPUTSTR

View File

@@ -1,9 +1,8 @@
const MACHID = $BF98
const iobuffer = $0800
const RELADDR = $1000
const symtbl = $B800
const freemem = $0006
const iobuffer = $0800
const symtbl = $DA00
const getlnbuf = $01FF
const CSW = $36
const KSW = $38
@@ -621,9 +620,9 @@ end
// loop
// return 0
asm lookuptbl(dci)#1
LDA #$00 ; SYMBOL TABLE
LDA #$00 ; SYMBOL TABLE AT $DA00
STA DSTL
LDA #$B8
LDA #$DA
STA DSTH
LDA ESTKL,X
STA SRCL
@@ -949,6 +948,8 @@ end
// Symbol table routines.
//
def addsym(sym, addr)#0
^$C083 // Read/Write enable RAMCARD BANK 2
^$C083
while ^sym & $80
^lastsym = ^sym
lastsym++
@@ -958,6 +959,7 @@ def addsym(sym, addr)#0
lastsym=>1 = addr
lastsym = lastsym + 3
^lastsym = 0
^$C080 // Read only RAMCARD BANK 2
end
//
// String routines.
@@ -1460,6 +1462,7 @@ else
//
// Print some startup info.
//
prstr("HEAP START:$"); prword(heap); crout
prstr("MEM FREE:$"); prword(availheap); crout
fin
docmds

View File

@@ -1541,6 +1541,7 @@ else
//
// Print some startup info.
//
prstr("HEAP START:$"); prword(heap); crout
prstr("MEM FREE:$"); prword(availheap); crout
fin
docmds

View File

@@ -6,17 +6,23 @@ LCRWEN = $C083
LCBNK2 = $00
LCBNK1 = $08
!SOURCE "vmsrc/plvmzp.inc"
JMP CMDMOVE
_CMDBEGIN = *
!PSEUDOPC $0C00 {
!SOURCE "vmsrc/apple/cmd.a"
_CMDEND = *
}
;*
;* MOVE CMD DOWN TO $0C00-$2000
;* MOVE CMD DOWN TO $0C00-$1C00
;*
LDA #<_CMDBEGIN
CMDMOVE LDA #<_CMDBEGIN
STA SRCL
LDA #>_CMDBEGIN
STA SRCH
LDY #$00
STY DSTL
LDX #$0C
STX DSTH
LDA #$0C
STA DSTH
LDX #$10
- LDA (SRC),Y
STA (DST),Y
@@ -25,20 +31,15 @@ LCBNK1 = $08
INC SRCH
INC DSTH
DEX ; STOP WHEN DST=$2000 REACHED
BNE -
BPL -
;
; INIT VM ENVIRONMENT STACK POINTERS
;
STY $01FF
STY IFPL ; INIT FRAME POINTER = $BF00
LDA #$B8
LDA #$BF
STA IFPH
LDX #$FE ; INIT STACK POINTER (YES, $FE. SEE GETS)
TXS
LDX #ESTKSZ/2 ; INIT EVAL STACK INDEX
JMP $0C00
_CMDBEGIN = *
!PSEUDOPC $0C00 {
!SOURCE "vmsrc/apple/cmd.a"
_CMDEND = *
}