mirror of
https://github.com/dschmenk/PLASMA.git
synced 2025-01-07 15:31:49 +00:00
Allocate proper size for defentries
This commit is contained in:
parent
58eb615176
commit
d0215eb7e1
@ -192,7 +192,7 @@ JITINTRP PLA
|
|||||||
PLA
|
PLA
|
||||||
SBC #$00
|
SBC #$00
|
||||||
STA TMPH
|
STA TMPH
|
||||||
LDY #$05
|
LDY #$06
|
||||||
LDA (TMP),Y ; DEC JIT COUNT
|
LDA (TMP),Y ; DEC JIT COUNT
|
||||||
SEC
|
SEC
|
||||||
SBC #$01
|
SBC #$01
|
||||||
@ -200,6 +200,9 @@ JITINTRP PLA
|
|||||||
BEQ RUNJIT
|
BEQ RUNJIT
|
||||||
DEY ; INTERP BYTECODE AS USUAL
|
DEY ; INTERP BYTECODE AS USUAL
|
||||||
LDA (TMP),Y
|
LDA (TMP),Y
|
||||||
|
STA IPX
|
||||||
|
DEY
|
||||||
|
LDA (TMP),Y
|
||||||
STA IPH
|
STA IPH
|
||||||
DEY
|
DEY
|
||||||
LDA (TMP),Y
|
LDA (TMP),Y
|
||||||
@ -210,7 +213,10 @@ RUNJIT LDA JITCOMP
|
|||||||
STA SRCL
|
STA SRCL
|
||||||
LDA JITCOMP+1
|
LDA JITCOMP+1
|
||||||
STA SRCH
|
STA SRCH
|
||||||
DEY ; LDY #$04
|
DEY ; LDY #$05
|
||||||
|
LDA (SRC),Y
|
||||||
|
STA IPX
|
||||||
|
DEY
|
||||||
LDA (SRC),Y
|
LDA (SRC),Y
|
||||||
STA IPH
|
STA IPH
|
||||||
DEY
|
DEY
|
||||||
|
@ -316,5 +316,5 @@ cmdsys:cmdparser = @shell
|
|||||||
interpentry = compiler:interpaddr
|
interpentry = compiler:interpaddr
|
||||||
*jitcomp = @compiler
|
*jitcomp = @compiler
|
||||||
cmdsys.jitcount = 44
|
cmdsys.jitcount = 44
|
||||||
cmdsys.jitsize = 96
|
//cmdsys.jitsize = 96
|
||||||
done
|
done
|
||||||
|
@ -457,7 +457,7 @@ end
|
|||||||
//
|
//
|
||||||
// Addresses of internal routines.
|
// Addresses of internal routines.
|
||||||
//
|
//
|
||||||
asm interp()#1
|
asm xinterp()#1
|
||||||
DEX
|
DEX
|
||||||
LDA #<XINTERP
|
LDA #<XINTERP
|
||||||
STA ESTKL,X
|
STA ESTKL,X
|
||||||
@ -1052,7 +1052,7 @@ def adddef(isfirst, ext, addr, deflast)#1
|
|||||||
fin
|
fin
|
||||||
fin
|
fin
|
||||||
defentry->interpjsr = $20
|
defentry->interpjsr = $20
|
||||||
defentry=>interpaddr = interp
|
defentry=>interpaddr = xinterp
|
||||||
defentry=>bytecodeaddr = addr
|
defentry=>bytecodeaddr = addr
|
||||||
defentry->bytecodexbyte = ext
|
defentry->bytecodexbyte = ext
|
||||||
defentry->t_defentry = 0
|
defentry->t_defentry = 0
|
||||||
@ -1120,7 +1120,7 @@ def loadmod(mod)#1
|
|||||||
//
|
//
|
||||||
// Init def table.
|
// Init def table.
|
||||||
//
|
//
|
||||||
deftbl = allocheap(defcnt * 6 + 1)
|
deftbl = allocheap(defcnt * t_defentry + 1)
|
||||||
deflast = deftbl
|
deflast = deftbl
|
||||||
^deflast = 0
|
^deflast = 0
|
||||||
if !refnum
|
if !refnum
|
||||||
|
Loading…
Reference in New Issue
Block a user