1
0
mirror of https://github.com/dschmenk/PLASMA.git synced 2025-04-07 01:38:18 +00:00

John Brooks Optiizations

This commit is contained in:
David Schmenk 2018-04-15 14:34:45 -07:00
parent 174ff0b7a2
commit bbac311c4f
7 changed files with 41 additions and 29 deletions

Binary file not shown.

Binary file not shown.

View File

@ -121,6 +121,7 @@ OPTBL !WORD CN,CN,CN,CN,CN,CN,CN,CN ; 00 02
!WORD NEG,COMP,BAND,IOR,XOR,SHL,SHR,IDXW ; 90 92 94 96 98 9A 9C 9E
!WORD BRGT,BRLT,INCBRLE,ADDBRLE,DECBRGE,SUBBRGE,BRAND,BROR ; A0 A2 A4 A6 A8 AA AC AE
!WORD ADDLB,ADDLW,ADDAB,ADDAW,IDXLB,IDXLW,IDXAB,IDXAW ; B0 B2 B4 B6 B8 BA BC BE
!WORD NATV ; C0
;*
;* DIV TOS-1 BY TOS
;*
@ -1066,6 +1067,17 @@ LEAVE INY ;+INC_IP
RTS
+ INC IFPH
RET RTS
;*
;* RETURN TO NATIVE CODE
;*
NATV TYA ; FLATTEN IP
SEC
ADC IPL
STA IPL
BCS +
JMP (IP)
+ INC IPH
JMP (IP)
A1CMD !SOURCE "vmsrc/apple/a1cmd.a"
SEGEND = *
VMINIT LDY #$10 ; INSTALL PAGE 0 FETCHOP ROUTINE

View File

@ -1452,9 +1452,9 @@ NATV TYA ; FLATTEN IP
SEC
ADC IPL
STA IPL
LDA #$00
ADC IPH
STA IPH
BCS +
JMP (IP)
+ INC IPH
JMP (IP)
VMEND = *
}

View File

@ -1428,11 +1428,11 @@ RET RTS
NATV TYA ; FLATTEN IP
SEC
ADC IPL
STA TMPL
LDA #$00
ADC IPH
STA TMPH
JMP JMPTMP
STA IPL
BCS +
JMP (IP)
+ INC IPH
JMP (IP)
SOSCMD = *
!SOURCE "vmsrc/apple/sossys.a"

View File

@ -728,31 +728,31 @@ DIVMOD +ACCMEM8
;*
;* NEGATE TOS
;*
NEG LDA #$0000
SEC
SBC TOS,S
STA TOS,S
NEG PLA
EOR #$FFFF
INC
PHA
JMP NEXTOP
;*
;* INCREMENT TOS
;*
INCR LDA TOS,S
INCR PLA
INC
STA TOS,S
PHA
JMP NEXTOP
;*
;* DECREMENT TOS
;*
DECR LDA TOS,S
DECR PLA
DEC
STA TOS,S
PHA
JMP NEXTOP
;*
;* BITWISE COMPLIMENT TOS
;*
COMP LDA TOS,S
COMP PLA
EOR #$FFFF
STA TOS,S
PHA
JMP NEXTOP
;*
;* BITWISE AND TOS TO TOS-1
@ -781,11 +781,11 @@ XOR PLA
SHL PLA
TAX
BEQ +
LDA TOS,S
PLA
- ASL
DEX
BNE -
STA TOS,S
PHA
+ JMP NEXTOP
;*
;* SHIFT TOS-1 RIGHT BY TOS
@ -793,12 +793,12 @@ SHL PLA
SHR PLA
TAX
BEQ +
LDA TOS,S
PLA
- CMP #$8000
ROR
DEX
BNE -
STA TOS,S
PHA
+ JMP NEXTOP
;*
;* DUPLICATE TOS
@ -1558,9 +1558,9 @@ BRLT LDA TOS,S
PLA ; DROP FOR VALUES
PLA
BRA BRNCH ; BMI BRNCH
DECBRGE LDA TOS,S
DECBRGE PLA
DEC
STA TOS,S
PHA
_BRGE LDA TOS,S
SEC
SBC NOS,S
@ -1569,9 +1569,9 @@ _BRGE LDA TOS,S
PLA ; DROP FOR VALUES
PLA
BRA NOBRNCH ; BMI NOBRNCH
INCBRLE LDA TOS,S
INCBRLE PLA
INC
STA TOS,S
PHA
_BRLE LDA NOS,S
SEC
SBC TOS,S

View File

@ -2016,9 +2016,9 @@ NATV TYA ; FLATTEN IP
SEC
ADC IPL
STA IPL
LDA #$00
ADC IPH
STA IPH
BCS +
JMP (IP)
+ INC IPH
JMP (IP)
VMEND = *
}