mirror of
https://github.com/mist64/msbasic.git
synced 2025-03-12 00:14:50 +00:00
EXTRA segment
This commit is contained in:
parent
6ced72245d
commit
bb6af5f8f6
128
apple_extra.s
Normal file
128
apple_extra.s
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
.segment "EXTRA"
|
||||||
|
|
||||||
|
.byte 0,0,0
|
||||||
|
L2900:
|
||||||
|
jsr LFD6A
|
||||||
|
stx $33
|
||||||
|
ldx #$00
|
||||||
|
L2907:
|
||||||
|
lda $0200,x
|
||||||
|
and #$7F
|
||||||
|
cmp #$0D
|
||||||
|
bne L2912
|
||||||
|
lda #$00
|
||||||
|
L2912:
|
||||||
|
sta $0200,x
|
||||||
|
inx
|
||||||
|
bne L2907
|
||||||
|
ldx $33
|
||||||
|
rts
|
||||||
|
PLT:
|
||||||
|
jmp L29F0
|
||||||
|
L291E:
|
||||||
|
cmp #$47
|
||||||
|
bne L2925
|
||||||
|
jmp L29E0
|
||||||
|
L2925:
|
||||||
|
cmp #$43
|
||||||
|
bne L292B
|
||||||
|
beq L2988
|
||||||
|
L292B:
|
||||||
|
cmp #$50
|
||||||
|
beq L2930
|
||||||
|
inx
|
||||||
|
L2930:
|
||||||
|
stx $33
|
||||||
|
L2932:
|
||||||
|
jsr FRMEVL
|
||||||
|
jsr ROUND_FAC
|
||||||
|
jsr AYINT
|
||||||
|
lda FAC+4
|
||||||
|
ldx $33
|
||||||
|
sta $0300,x
|
||||||
|
dec $33
|
||||||
|
bmi L294Dx
|
||||||
|
lda #$2C
|
||||||
|
jsr SYNCHR
|
||||||
|
bpl L2932
|
||||||
|
L294Dx:
|
||||||
|
tay
|
||||||
|
pla
|
||||||
|
cmp #$43
|
||||||
|
bne L2957
|
||||||
|
tya
|
||||||
|
jmp LF864
|
||||||
|
L2957:
|
||||||
|
cmp #$50
|
||||||
|
bne L2962
|
||||||
|
tya
|
||||||
|
ldy $0301
|
||||||
|
jmp LF800
|
||||||
|
L2962:
|
||||||
|
pha
|
||||||
|
lda $0301
|
||||||
|
sta $2C
|
||||||
|
sta $2D
|
||||||
|
pla
|
||||||
|
cmp #$48
|
||||||
|
bne L2978
|
||||||
|
lda $0300
|
||||||
|
ldy $0302
|
||||||
|
jmp LF819
|
||||||
|
L2978:
|
||||||
|
cmp #$56
|
||||||
|
beq L297F
|
||||||
|
jmp SYNERR
|
||||||
|
L297F:
|
||||||
|
ldy $0300
|
||||||
|
lda $0302
|
||||||
|
jmp LF828
|
||||||
|
L2988:
|
||||||
|
dex
|
||||||
|
beq L2930
|
||||||
|
INLINX:
|
||||||
|
jsr OUTQUES
|
||||||
|
jsr OUTSP
|
||||||
|
ldx #$80
|
||||||
|
jmp INLIN1
|
||||||
|
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
.byte 0,0,0,0,0,0,0,0,0,0
|
||||||
|
L29D0:
|
||||||
|
jsr L29DA
|
||||||
|
lda FAC+3
|
||||||
|
sta FAC+5
|
||||||
|
jmp (FAC+4)
|
||||||
|
L29DA:
|
||||||
|
jmp (GOSTROUT)
|
||||||
|
brk
|
||||||
|
brk
|
||||||
|
brk
|
||||||
|
L29E0:
|
||||||
|
pla
|
||||||
|
jmp LFB40
|
||||||
|
.byte 0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
L29F0:
|
||||||
|
pha
|
||||||
|
ldx #$01
|
||||||
|
inc $B9
|
||||||
|
bne L29F9
|
||||||
|
inc $BA
|
||||||
|
L29F9:
|
||||||
|
jmp L291E
|
||||||
|
.byte $00,$00,$00,$00,$41,$53,$21,$D2
|
||||||
|
.byte $02,$FA,$00
|
||||||
|
lda $12
|
||||||
|
beq L2A0E
|
||||||
|
jmp (L0008)
|
||||||
|
L2A0E:
|
||||||
|
jsr LF689
|
||||||
|
.byte $15,$BC,$08,$10,$52,$45,$75,$10
|
||||||
|
.byte $CD,$00,$55,$15,$9E,$08,$10,$4C
|
||||||
|
.byte $45,$75,$10,$D4,$00,$55,$15,$0E
|
||||||
|
.byte $08,$10,$89,$10,$75,$15,$1C,$08
|
||||||
|
.byte $10,$1F,$10,$75,$00
|
||||||
|
jmp (L0008)
|
||||||
|
; ----------------------------------------------------------------------------
|
||||||
|
.byte 0,0,0,0,0,0
|
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
637
init.s
637
init.s
@ -422,178 +422,16 @@ QT_BASIC:
|
|||||||
.byte $0D,$0A,$00
|
.byte $0D,$0A,$00
|
||||||
.endif
|
.endif
|
||||||
.endif /* KBD */
|
.endif /* KBD */
|
||||||
|
|
||||||
|
.segment "EXTRA"
|
||||||
|
|
||||||
.ifdef OSI
|
.ifdef OSI
|
||||||
.byte $00,$00
|
.include "osi_extra.s"
|
||||||
LBEE4:
|
.endif
|
||||||
lda LBF05
|
|
||||||
lsr a
|
|
||||||
bcc LBEE4
|
|
||||||
lda $FB03
|
|
||||||
sta $FB07
|
|
||||||
and #$7F
|
|
||||||
rts
|
|
||||||
pha
|
|
||||||
LBEF4:
|
|
||||||
lda $FB05
|
|
||||||
bpl LBEF4
|
|
||||||
pla
|
|
||||||
sta $FB04
|
|
||||||
rts
|
|
||||||
lda $FB06
|
|
||||||
lda #$FF
|
|
||||||
.byte $8D
|
|
||||||
.byte $05
|
|
||||||
LBF05:
|
|
||||||
.byte $FB
|
|
||||||
rts
|
|
||||||
LBF07:
|
|
||||||
lda $FC00
|
|
||||||
lsr a
|
|
||||||
bcc LBF07
|
|
||||||
lda $FC01
|
|
||||||
beq LBF07
|
|
||||||
and #$7F
|
|
||||||
rts
|
|
||||||
pha
|
|
||||||
LBF16:
|
|
||||||
lda $FC00
|
|
||||||
lsr a
|
|
||||||
lsr a
|
|
||||||
bcc LBF16
|
|
||||||
pla
|
|
||||||
sta $FC01
|
|
||||||
rts
|
|
||||||
lda #$03
|
|
||||||
sta $FC00
|
|
||||||
lda #$B1
|
|
||||||
sta $FC00
|
|
||||||
rts
|
|
||||||
sta $0202
|
|
||||||
pha
|
|
||||||
txa
|
|
||||||
pha
|
|
||||||
tya
|
|
||||||
pha
|
|
||||||
lda $0202
|
|
||||||
beq LBF6D
|
|
||||||
ldy $0206
|
|
||||||
beq LBF47
|
|
||||||
LBF3F:
|
|
||||||
ldx #$40
|
|
||||||
LBF41:
|
|
||||||
dex
|
|
||||||
bne LBF41
|
|
||||||
dey
|
|
||||||
bne LBF3F
|
|
||||||
LBF47:
|
|
||||||
cmp #$0A
|
|
||||||
beq LBF76
|
|
||||||
cmp #$0D
|
|
||||||
bne LBF55
|
|
||||||
jsr LBFD5
|
|
||||||
jmp LBF6D
|
|
||||||
LBF55:
|
|
||||||
sta $0201
|
|
||||||
jsr LBFC2
|
|
||||||
inc $0200
|
|
||||||
lda $FFE1
|
|
||||||
clc
|
|
||||||
adc $FFE0
|
|
||||||
cmp $0200
|
|
||||||
bmi LBF73
|
|
||||||
LBF6A:
|
|
||||||
jsr LBFDE
|
|
||||||
LBF6D:
|
|
||||||
pla
|
|
||||||
tay
|
|
||||||
pla
|
|
||||||
tax
|
|
||||||
pla
|
|
||||||
rts
|
|
||||||
LBF73:
|
|
||||||
jsr LBFD8
|
|
||||||
LBF76:
|
|
||||||
jsr LBFC2
|
|
||||||
lda $FFE0
|
|
||||||
and #$E0
|
|
||||||
sta $0202
|
|
||||||
ldx #$07
|
|
||||||
LBF83:
|
|
||||||
lda LBFF3,x
|
|
||||||
sta L0207,x
|
|
||||||
dex
|
|
||||||
bpl LBF83
|
|
||||||
ldx LBFFB,y
|
|
||||||
lda #$20
|
|
||||||
ldy $FFE1
|
|
||||||
cpy #$20
|
|
||||||
bmi LBF99
|
|
||||||
asl a
|
|
||||||
LBF99:
|
|
||||||
sta $0208
|
|
||||||
ldy #$00
|
|
||||||
LBF9E:
|
|
||||||
jsr L0207
|
|
||||||
bne LBF9E
|
|
||||||
inc $0209
|
|
||||||
inc $020C
|
|
||||||
cpx $0209
|
|
||||||
bne LBF9E
|
|
||||||
LBFAE:
|
|
||||||
jsr L0207
|
|
||||||
cpy $0202
|
|
||||||
bne LBFAE
|
|
||||||
lda #$20
|
|
||||||
LBFB8:
|
|
||||||
jsr L020A
|
|
||||||
dec $0208
|
|
||||||
bne LBFB8
|
|
||||||
beq LBF6A
|
|
||||||
LBFC2:
|
|
||||||
ldx $0200
|
|
||||||
lda $0201
|
|
||||||
LBFC8:
|
|
||||||
ldy $FFE2
|
|
||||||
bne LBFD1
|
|
||||||
sta $D300,x
|
|
||||||
rts
|
|
||||||
LBFD1:
|
|
||||||
sta $D700,x
|
|
||||||
rts
|
|
||||||
LBFD5:
|
|
||||||
jsr LBFC2
|
|
||||||
LBFD8:
|
|
||||||
lda $FFE0
|
|
||||||
sta $0200
|
|
||||||
LBFDE:
|
|
||||||
ldx $0200
|
|
||||||
lda $D300,x
|
|
||||||
ldy $FFE2
|
|
||||||
beq LBFEC
|
|
||||||
lda $D700,x
|
|
||||||
LBFEC:
|
|
||||||
sta $0201
|
|
||||||
lda #$5F
|
|
||||||
bne LBFC8
|
|
||||||
LBFF3:
|
|
||||||
lda $D000,y
|
|
||||||
sta $D000,y
|
|
||||||
iny
|
|
||||||
rts
|
|
||||||
LBFFB:
|
|
||||||
.byte $D3
|
|
||||||
.byte $D7
|
|
||||||
brk
|
|
||||||
brk
|
|
||||||
brk
|
|
||||||
.endif /* CONFIG_SMALL */
|
|
||||||
.ifdef KIM
|
.ifdef KIM
|
||||||
RAMSTART2:
|
.include "kim_extra.s"
|
||||||
.byte $08,$29,$25,$20,$60,$2A,$E5,$E4
|
.endif
|
||||||
.byte $20,$66,$24,$65,$AC,$04,$A4
|
|
||||||
.endif /* KIM */
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.ifdef CONFIG_CBM1_PATCHES
|
.ifdef CONFIG_CBM1_PATCHES
|
||||||
.include "cbm1_patches.s"
|
.include "cbm1_patches.s"
|
||||||
@ -601,462 +439,9 @@ RAMSTART2:
|
|||||||
|
|
||||||
|
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
stx SHIFTSIGNEXT
|
.include "kbd_extra.s"
|
||||||
stx $0800
|
|
||||||
inx
|
|
||||||
stx Z17
|
|
||||||
stx Z18
|
|
||||||
stx TXTTAB
|
|
||||||
lda #$08
|
|
||||||
sta TXTTAB+1
|
|
||||||
jsr SCRTCH
|
|
||||||
sta STACK+255
|
|
||||||
jsr LDE42
|
|
||||||
.byte $1B,$06,$01,$0C
|
|
||||||
.byte "INTELLIVISION BASIC"
|
|
||||||
.byte $0D,$0A,$0A
|
|
||||||
.byte "Copyright Microsoft, Mattel 1980"
|
|
||||||
.byte $0D,$0A,$00
|
|
||||||
sta $0435
|
|
||||||
sta $8F
|
|
||||||
ldy #$0F
|
|
||||||
lda #$FF
|
|
||||||
sta ($04),y
|
|
||||||
jsr LDE8C
|
|
||||||
.byte $0C
|
|
||||||
jmp RESTART
|
|
||||||
OUTQUESSP:
|
|
||||||
jsr OUTQUES
|
|
||||||
jmp OUTSP
|
|
||||||
LFDDA:
|
|
||||||
ldy #$FF
|
|
||||||
LFDDC:
|
|
||||||
iny
|
|
||||||
LFDDD:
|
|
||||||
jsr LF43B
|
|
||||||
cmp #$03
|
|
||||||
beq LFDF7
|
|
||||||
cmp #$20
|
|
||||||
bcs LFDEC
|
|
||||||
sbc #$09
|
|
||||||
bne LFDDD
|
|
||||||
LFDEC:
|
|
||||||
sta Z00,y
|
|
||||||
tax
|
|
||||||
bne LFDDC
|
|
||||||
jsr LE882
|
|
||||||
ldy #$06
|
|
||||||
LFDF7:
|
|
||||||
tax
|
|
||||||
clc
|
|
||||||
rts
|
|
||||||
LFDFA:
|
|
||||||
bit $8F
|
|
||||||
bmi LFE01
|
|
||||||
jsr LDE48
|
|
||||||
LFE01:
|
|
||||||
bit $8F
|
|
||||||
bvc LFE10
|
|
||||||
jmp LDE53
|
|
||||||
LFE08:
|
|
||||||
jsr LFDFA
|
|
||||||
LFE0B:
|
|
||||||
jsr LDE24
|
|
||||||
bne LFE08
|
|
||||||
LFE10:
|
|
||||||
rts
|
|
||||||
VSAV:
|
|
||||||
jsr GARBAG
|
|
||||||
lda FRETOP
|
|
||||||
sta $00
|
|
||||||
lda FRETOP+1
|
|
||||||
.byte $85
|
|
||||||
LFE1B:
|
|
||||||
ora ($A5,x)
|
|
||||||
.byte $2F
|
|
||||||
sta $02
|
|
||||||
lda STREND+1
|
|
||||||
sta $03
|
|
||||||
ldy #$00
|
|
||||||
LFE26:
|
|
||||||
lda ($00),y
|
|
||||||
sta ($02),y
|
|
||||||
inc $02
|
|
||||||
bne LFE30
|
|
||||||
inc $03
|
|
||||||
LFE30:
|
|
||||||
inc $00
|
|
||||||
bne LFE26
|
|
||||||
inc $01
|
|
||||||
bit $01
|
|
||||||
bvc LFE26
|
|
||||||
ldx VARTAB
|
|
||||||
ldy VARTAB+1
|
|
||||||
lda #$01
|
|
||||||
bne LFE50
|
|
||||||
PSAV:
|
|
||||||
lda VARTAB
|
|
||||||
sta $02
|
|
||||||
lda VARTAB+1
|
|
||||||
sta $03
|
|
||||||
ldx #$01
|
|
||||||
ldy #$08
|
|
||||||
lda #$02
|
|
||||||
LFE50:
|
|
||||||
sta $0513
|
|
||||||
stx $0503
|
|
||||||
stx $00
|
|
||||||
sty $0504
|
|
||||||
sty $01
|
|
||||||
ldy #$0D
|
|
||||||
lda #$00
|
|
||||||
LFE61:
|
|
||||||
sta $0504,y
|
|
||||||
dey
|
|
||||||
bne LFE61
|
|
||||||
sty $0500
|
|
||||||
lda #$40
|
|
||||||
sta $0505
|
|
||||||
lda $02
|
|
||||||
sec
|
|
||||||
sbc $00
|
|
||||||
sta $00
|
|
||||||
lda $03
|
|
||||||
sbc $01
|
|
||||||
sta $01
|
|
||||||
lsr a
|
|
||||||
lsr a
|
|
||||||
lsr a
|
|
||||||
sta $03
|
|
||||||
jsr LE870
|
|
||||||
sta $02
|
|
||||||
jsr CHRGOT
|
|
||||||
beq LFEA6
|
|
||||||
cmp #$2C
|
|
||||||
beq L40FA
|
|
||||||
jmp SYNERR
|
|
||||||
L40FA:
|
|
||||||
jsr CHRGET
|
|
||||||
jsr LE870
|
|
||||||
sec
|
|
||||||
sbc $02
|
|
||||||
cmp $03
|
|
||||||
bpl LFEBF
|
|
||||||
lda #$27
|
|
||||||
sta JMPADRS
|
|
||||||
jmp LFFBD
|
|
||||||
LFEA6:
|
|
||||||
lda $02
|
|
||||||
clc
|
|
||||||
adc $03
|
|
||||||
jsr LE874
|
|
||||||
pha
|
|
||||||
jsr LFE0B
|
|
||||||
jsr L6874
|
|
||||||
.byte $72
|
|
||||||
adc $00,x
|
|
||||||
pla
|
|
||||||
tax
|
|
||||||
lda #$00
|
|
||||||
jsr LINPRT
|
|
||||||
LFEBF:
|
|
||||||
ldx #$07
|
|
||||||
LBF83:
|
|
||||||
dex
|
|
||||||
lda VARTAB,x
|
|
||||||
sec
|
|
||||||
sbc TXTTAB,x
|
|
||||||
sta $051B,x
|
|
||||||
lda VARTAB+1,x
|
|
||||||
sbc TXTTAB+1,x
|
|
||||||
sta $051C,x
|
|
||||||
dex
|
|
||||||
bpl LBF83
|
|
||||||
txa
|
|
||||||
sbc FRETOP
|
|
||||||
sta $0521
|
|
||||||
lda #$3F
|
|
||||||
sbc FRETOP+1
|
|
||||||
sta $0522
|
|
||||||
lda FRETOP
|
|
||||||
sta $0523
|
|
||||||
lda FRETOP+1
|
|
||||||
sta $0524
|
|
||||||
ldx $02
|
|
||||||
jsr LFFDD
|
|
||||||
jsr LFFD1
|
|
||||||
lda $01
|
|
||||||
ldx #$05
|
|
||||||
LFEF7:
|
|
||||||
stx $0511
|
|
||||||
ldy #$E4
|
|
||||||
sec
|
|
||||||
sbc #$08
|
|
||||||
sta $01
|
|
||||||
bpl LFF15
|
|
||||||
adc #$08
|
|
||||||
asl $00
|
|
||||||
rol a
|
|
||||||
asl $00
|
|
||||||
rol a
|
|
||||||
asl $00
|
|
||||||
rol a
|
|
||||||
adc #$01
|
|
||||||
sta $0505
|
|
||||||
ldy #$00
|
|
||||||
LFF15:
|
|
||||||
sty $0512
|
|
||||||
jsr LE4C0
|
|
||||||
ldx #$00
|
|
||||||
lda $01
|
|
||||||
bpl LFEF7
|
|
||||||
LFF21:
|
|
||||||
rts
|
|
||||||
VLOD:
|
|
||||||
jsr LFFD1
|
|
||||||
stx JMPADRS
|
|
||||||
lda VARTAB
|
|
||||||
ldy VARTAB+1
|
|
||||||
ldx #$01
|
|
||||||
jsr LFF64
|
|
||||||
ldx #$00
|
|
||||||
ldy #$02
|
|
||||||
LFF34:
|
|
||||||
jsr LE39A
|
|
||||||
iny
|
|
||||||
iny
|
|
||||||
inx
|
|
||||||
inx
|
|
||||||
cpx #$05
|
|
||||||
bmi LFF34
|
|
||||||
lda STREND
|
|
||||||
sta LOWTR
|
|
||||||
lda STREND+1
|
|
||||||
sta LOWTR+1
|
|
||||||
lda FRETOP
|
|
||||||
sta HIGHTR
|
|
||||||
lda FRETOP+1
|
|
||||||
sta HIGHTR+1
|
|
||||||
lda #$FF
|
|
||||||
sta HIGHDS
|
|
||||||
lda #$3F
|
|
||||||
sta HIGHDS+1
|
|
||||||
lda $0523
|
|
||||||
sta FRETOP
|
|
||||||
lda $0524
|
|
||||||
sta FRETOP+1
|
|
||||||
jmp BLTU2
|
|
||||||
LFF64:
|
|
||||||
sta $9A
|
|
||||||
sty $9B
|
|
||||||
stx $00
|
|
||||||
jsr LE870
|
|
||||||
jsr LFFDD
|
|
||||||
lda JMPADRS
|
|
||||||
beq LFF7F
|
|
||||||
lda #$01
|
|
||||||
sta $9A
|
|
||||||
lda #$08
|
|
||||||
sta $9B
|
|
||||||
jsr STXTPT
|
|
||||||
LFF7F:
|
|
||||||
lda $9A
|
|
||||||
sta $0503
|
|
||||||
lda $9B
|
|
||||||
sta $0504
|
|
||||||
lda #$ED
|
|
||||||
sta $0512
|
|
||||||
lda #$05
|
|
||||||
sta $01
|
|
||||||
LFF92:
|
|
||||||
ldx $0512
|
|
||||||
beq LFF21
|
|
||||||
ldy #$04
|
|
||||||
jsr LE4C4
|
|
||||||
lda $01
|
|
||||||
cmp $0511
|
|
||||||
bne LFFB2
|
|
||||||
lda #$00
|
|
||||||
sta $01
|
|
||||||
lda $00
|
|
||||||
cmp $0513
|
|
||||||
beq LFF92
|
|
||||||
lda #$18
|
|
||||||
bne LFFB8
|
|
||||||
LFFB2:
|
|
||||||
lda #$27
|
|
||||||
bne LFFB8
|
|
||||||
LFFB6:
|
|
||||||
lda #$3C
|
|
||||||
LFFB8:
|
|
||||||
sta JMPADRS
|
|
||||||
jsr CLEARC
|
|
||||||
LFFBD:
|
|
||||||
jsr LF422
|
|
||||||
sta $9A
|
|
||||||
sty $9B
|
|
||||||
lda #$00
|
|
||||||
tay
|
|
||||||
sta ($9A),y
|
|
||||||
iny
|
|
||||||
sta ($9A),y
|
|
||||||
ldx JMPADRS
|
|
||||||
jmp ERROR
|
|
||||||
LFFD1:
|
|
||||||
ldx #$00
|
|
||||||
LFFD3:
|
|
||||||
lda #$02
|
|
||||||
.byte $2C
|
|
||||||
LFFD6:
|
|
||||||
lda #$03
|
|
||||||
jsr LDE8C
|
|
||||||
asl FACSIGN
|
|
||||||
LFFDD:
|
|
||||||
jsr CHRGOT
|
|
||||||
beq LFFE5
|
|
||||||
jmp SYNERR
|
|
||||||
LFFE5:
|
|
||||||
lda #$0D
|
|
||||||
ldy #$00
|
|
||||||
jsr LDE8C
|
|
||||||
.byte $06
|
|
||||||
LFFED:
|
|
||||||
lda $034C
|
|
||||||
bmi LFFED
|
|
||||||
ldy #$01
|
|
||||||
lda ($04),y
|
|
||||||
bne LFFB6
|
|
||||||
rts
|
|
||||||
.byte $FF
|
|
||||||
.addr LC000
|
|
||||||
.addr LC000
|
|
||||||
.addr LC009
|
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.ifdef APPLE
|
.ifdef APPLE
|
||||||
.byte 0,0,0
|
.include "apple_extra.s"
|
||||||
L2900:
|
|
||||||
jsr LFD6A
|
|
||||||
stx $33
|
|
||||||
ldx #$00
|
|
||||||
L2907:
|
|
||||||
lda $0200,x
|
|
||||||
and #$7F
|
|
||||||
cmp #$0D
|
|
||||||
bne L2912
|
|
||||||
lda #$00
|
|
||||||
L2912:
|
|
||||||
sta $0200,x
|
|
||||||
inx
|
|
||||||
bne L2907
|
|
||||||
ldx $33
|
|
||||||
rts
|
|
||||||
PLT:
|
|
||||||
jmp L29F0
|
|
||||||
L291E:
|
|
||||||
cmp #$47
|
|
||||||
bne L2925
|
|
||||||
jmp L29E0
|
|
||||||
L2925:
|
|
||||||
cmp #$43
|
|
||||||
bne L292B
|
|
||||||
beq L2988
|
|
||||||
L292B:
|
|
||||||
cmp #$50
|
|
||||||
beq L2930
|
|
||||||
inx
|
|
||||||
L2930:
|
|
||||||
stx $33
|
|
||||||
L2932:
|
|
||||||
jsr FRMEVL
|
|
||||||
jsr ROUND_FAC
|
|
||||||
jsr AYINT
|
|
||||||
lda FAC+4
|
|
||||||
ldx $33
|
|
||||||
sta $0300,x
|
|
||||||
dec $33
|
|
||||||
bmi L294Dx
|
|
||||||
lda #$2C
|
|
||||||
jsr SYNCHR
|
|
||||||
bpl L2932
|
|
||||||
L294Dx:
|
|
||||||
tay
|
|
||||||
pla
|
|
||||||
cmp #$43
|
|
||||||
bne L2957
|
|
||||||
tya
|
|
||||||
jmp LF864
|
|
||||||
L2957:
|
|
||||||
cmp #$50
|
|
||||||
bne L2962
|
|
||||||
tya
|
|
||||||
ldy $0301
|
|
||||||
jmp LF800
|
|
||||||
L2962:
|
|
||||||
pha
|
|
||||||
lda $0301
|
|
||||||
sta $2C
|
|
||||||
sta $2D
|
|
||||||
pla
|
|
||||||
cmp #$48
|
|
||||||
bne L2978
|
|
||||||
lda $0300
|
|
||||||
ldy $0302
|
|
||||||
jmp LF819
|
|
||||||
L2978:
|
|
||||||
cmp #$56
|
|
||||||
beq L297F
|
|
||||||
jmp SYNERR
|
|
||||||
L297F:
|
|
||||||
ldy $0300
|
|
||||||
lda $0302
|
|
||||||
jmp LF828
|
|
||||||
L2988:
|
|
||||||
dex
|
|
||||||
beq L2930
|
|
||||||
INLINX:
|
|
||||||
jsr OUTQUES
|
|
||||||
jsr OUTSP
|
|
||||||
ldx #$80
|
|
||||||
jmp INLIN1
|
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0
|
|
||||||
L29D0:
|
|
||||||
jsr L29DA
|
|
||||||
lda FAC+3
|
|
||||||
sta FAC+5
|
|
||||||
jmp (FAC+4)
|
|
||||||
L29DA:
|
|
||||||
jmp (GOSTROUT)
|
|
||||||
brk
|
|
||||||
brk
|
|
||||||
brk
|
|
||||||
L29E0:
|
|
||||||
pla
|
|
||||||
jmp LFB40
|
|
||||||
.byte 0,0,0,0,0,0,0,0,0,0,0,0
|
|
||||||
L29F0:
|
|
||||||
pha
|
|
||||||
ldx #$01
|
|
||||||
inc $B9
|
|
||||||
bne L29F9
|
|
||||||
inc $BA
|
|
||||||
L29F9:
|
|
||||||
jmp L291E
|
|
||||||
.byte $00,$00,$00,$00,$41,$53,$21,$D2
|
|
||||||
.byte $02,$FA,$00
|
|
||||||
lda $12
|
|
||||||
beq L2A0E
|
|
||||||
jmp (L0008)
|
|
||||||
L2A0E:
|
|
||||||
jsr LF689
|
|
||||||
.byte $15,$BC,$08,$10,$52,$45,$75,$10
|
|
||||||
.byte $CD,$00,$55,$15,$9E,$08,$10,$4C
|
|
||||||
.byte $45,$75,$10,$D4,$00,$55,$15,$0E
|
|
||||||
.byte $08,$10,$89,$10,$75,$15,$1C,$08
|
|
||||||
.byte $10,$1F,$10,$75,$00
|
|
||||||
jmp (L0008)
|
|
||||||
; ----------------------------------------------------------------------------
|
|
||||||
.byte 0,0,0,0,0,0
|
|
||||||
.endif
|
.endif
|
1
kb9.cfg
1
kb9.cfg
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
331
kbd_extra.s
Normal file
331
kbd_extra.s
Normal file
@ -0,0 +1,331 @@
|
|||||||
|
.segment "EXTRA"
|
||||||
|
stx SHIFTSIGNEXT
|
||||||
|
stx $0800
|
||||||
|
inx
|
||||||
|
stx Z17
|
||||||
|
stx Z18
|
||||||
|
stx TXTTAB
|
||||||
|
lda #$08
|
||||||
|
sta TXTTAB+1
|
||||||
|
jsr SCRTCH
|
||||||
|
sta STACK+255
|
||||||
|
jsr LDE42
|
||||||
|
.byte $1B,$06,$01,$0C
|
||||||
|
.byte "INTELLIVISION BASIC"
|
||||||
|
.byte $0D,$0A,$0A
|
||||||
|
.byte "Copyright Microsoft, Mattel 1980"
|
||||||
|
.byte $0D,$0A,$00
|
||||||
|
sta $0435
|
||||||
|
sta $8F
|
||||||
|
ldy #$0F
|
||||||
|
lda #$FF
|
||||||
|
sta ($04),y
|
||||||
|
jsr LDE8C
|
||||||
|
.byte $0C
|
||||||
|
jmp RESTART
|
||||||
|
OUTQUESSP:
|
||||||
|
jsr OUTQUES
|
||||||
|
jmp OUTSP
|
||||||
|
LFDDA:
|
||||||
|
ldy #$FF
|
||||||
|
LFDDC:
|
||||||
|
iny
|
||||||
|
LFDDD:
|
||||||
|
jsr LF43B
|
||||||
|
cmp #$03
|
||||||
|
beq LFDF7
|
||||||
|
cmp #$20
|
||||||
|
bcs LFDEC
|
||||||
|
sbc #$09
|
||||||
|
bne LFDDD
|
||||||
|
LFDEC:
|
||||||
|
sta Z00,y
|
||||||
|
tax
|
||||||
|
bne LFDDC
|
||||||
|
jsr LE882
|
||||||
|
ldy #$06
|
||||||
|
LFDF7:
|
||||||
|
tax
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
LFDFA:
|
||||||
|
bit $8F
|
||||||
|
bmi LFE01
|
||||||
|
jsr LDE48
|
||||||
|
LFE01:
|
||||||
|
bit $8F
|
||||||
|
bvc LFE10
|
||||||
|
jmp LDE53
|
||||||
|
LFE08:
|
||||||
|
jsr LFDFA
|
||||||
|
LFE0B:
|
||||||
|
jsr LDE24
|
||||||
|
bne LFE08
|
||||||
|
LFE10:
|
||||||
|
rts
|
||||||
|
VSAV:
|
||||||
|
jsr GARBAG
|
||||||
|
lda FRETOP
|
||||||
|
sta $00
|
||||||
|
lda FRETOP+1
|
||||||
|
.byte $85
|
||||||
|
LFE1B:
|
||||||
|
ora ($A5,x)
|
||||||
|
.byte $2F
|
||||||
|
sta $02
|
||||||
|
lda STREND+1
|
||||||
|
sta $03
|
||||||
|
ldy #$00
|
||||||
|
LFE26:
|
||||||
|
lda ($00),y
|
||||||
|
sta ($02),y
|
||||||
|
inc $02
|
||||||
|
bne LFE30
|
||||||
|
inc $03
|
||||||
|
LFE30:
|
||||||
|
inc $00
|
||||||
|
bne LFE26
|
||||||
|
inc $01
|
||||||
|
bit $01
|
||||||
|
bvc LFE26
|
||||||
|
ldx VARTAB
|
||||||
|
ldy VARTAB+1
|
||||||
|
lda #$01
|
||||||
|
bne LFE50
|
||||||
|
PSAV:
|
||||||
|
lda VARTAB
|
||||||
|
sta $02
|
||||||
|
lda VARTAB+1
|
||||||
|
sta $03
|
||||||
|
ldx #$01
|
||||||
|
ldy #$08
|
||||||
|
lda #$02
|
||||||
|
LFE50:
|
||||||
|
sta $0513
|
||||||
|
stx $0503
|
||||||
|
stx $00
|
||||||
|
sty $0504
|
||||||
|
sty $01
|
||||||
|
ldy #$0D
|
||||||
|
lda #$00
|
||||||
|
LFE61:
|
||||||
|
sta $0504,y
|
||||||
|
dey
|
||||||
|
bne LFE61
|
||||||
|
sty $0500
|
||||||
|
lda #$40
|
||||||
|
sta $0505
|
||||||
|
lda $02
|
||||||
|
sec
|
||||||
|
sbc $00
|
||||||
|
sta $00
|
||||||
|
lda $03
|
||||||
|
sbc $01
|
||||||
|
sta $01
|
||||||
|
lsr a
|
||||||
|
lsr a
|
||||||
|
lsr a
|
||||||
|
sta $03
|
||||||
|
jsr LE870
|
||||||
|
sta $02
|
||||||
|
jsr CHRGOT
|
||||||
|
beq LFEA6
|
||||||
|
cmp #$2C
|
||||||
|
beq L40FA
|
||||||
|
jmp SYNERR
|
||||||
|
L40FA:
|
||||||
|
jsr CHRGET
|
||||||
|
jsr LE870
|
||||||
|
sec
|
||||||
|
sbc $02
|
||||||
|
cmp $03
|
||||||
|
bpl LFEBF
|
||||||
|
lda #$27
|
||||||
|
sta JMPADRS
|
||||||
|
jmp LFFBD
|
||||||
|
LFEA6:
|
||||||
|
lda $02
|
||||||
|
clc
|
||||||
|
adc $03
|
||||||
|
jsr LE874
|
||||||
|
pha
|
||||||
|
jsr LFE0B
|
||||||
|
jsr L6874
|
||||||
|
.byte $72
|
||||||
|
adc $00,x
|
||||||
|
pla
|
||||||
|
tax
|
||||||
|
lda #$00
|
||||||
|
jsr LINPRT
|
||||||
|
LFEBF:
|
||||||
|
ldx #$07
|
||||||
|
LBF83:
|
||||||
|
dex
|
||||||
|
lda VARTAB,x
|
||||||
|
sec
|
||||||
|
sbc TXTTAB,x
|
||||||
|
sta $051B,x
|
||||||
|
lda VARTAB+1,x
|
||||||
|
sbc TXTTAB+1,x
|
||||||
|
sta $051C,x
|
||||||
|
dex
|
||||||
|
bpl LBF83
|
||||||
|
txa
|
||||||
|
sbc FRETOP
|
||||||
|
sta $0521
|
||||||
|
lda #$3F
|
||||||
|
sbc FRETOP+1
|
||||||
|
sta $0522
|
||||||
|
lda FRETOP
|
||||||
|
sta $0523
|
||||||
|
lda FRETOP+1
|
||||||
|
sta $0524
|
||||||
|
ldx $02
|
||||||
|
jsr LFFDD
|
||||||
|
jsr LFFD1
|
||||||
|
lda $01
|
||||||
|
ldx #$05
|
||||||
|
LFEF7:
|
||||||
|
stx $0511
|
||||||
|
ldy #$E4
|
||||||
|
sec
|
||||||
|
sbc #$08
|
||||||
|
sta $01
|
||||||
|
bpl LFF15
|
||||||
|
adc #$08
|
||||||
|
asl $00
|
||||||
|
rol a
|
||||||
|
asl $00
|
||||||
|
rol a
|
||||||
|
asl $00
|
||||||
|
rol a
|
||||||
|
adc #$01
|
||||||
|
sta $0505
|
||||||
|
ldy #$00
|
||||||
|
LFF15:
|
||||||
|
sty $0512
|
||||||
|
jsr LE4C0
|
||||||
|
ldx #$00
|
||||||
|
lda $01
|
||||||
|
bpl LFEF7
|
||||||
|
LFF21:
|
||||||
|
rts
|
||||||
|
VLOD:
|
||||||
|
jsr LFFD1
|
||||||
|
stx JMPADRS
|
||||||
|
lda VARTAB
|
||||||
|
ldy VARTAB+1
|
||||||
|
ldx #$01
|
||||||
|
jsr LFF64
|
||||||
|
ldx #$00
|
||||||
|
ldy #$02
|
||||||
|
LFF34:
|
||||||
|
jsr LE39A
|
||||||
|
iny
|
||||||
|
iny
|
||||||
|
inx
|
||||||
|
inx
|
||||||
|
cpx #$05
|
||||||
|
bmi LFF34
|
||||||
|
lda STREND
|
||||||
|
sta LOWTR
|
||||||
|
lda STREND+1
|
||||||
|
sta LOWTR+1
|
||||||
|
lda FRETOP
|
||||||
|
sta HIGHTR
|
||||||
|
lda FRETOP+1
|
||||||
|
sta HIGHTR+1
|
||||||
|
lda #$FF
|
||||||
|
sta HIGHDS
|
||||||
|
lda #$3F
|
||||||
|
sta HIGHDS+1
|
||||||
|
lda $0523
|
||||||
|
sta FRETOP
|
||||||
|
lda $0524
|
||||||
|
sta FRETOP+1
|
||||||
|
jmp BLTU2
|
||||||
|
LFF64:
|
||||||
|
sta $9A
|
||||||
|
sty $9B
|
||||||
|
stx $00
|
||||||
|
jsr LE870
|
||||||
|
jsr LFFDD
|
||||||
|
lda JMPADRS
|
||||||
|
beq LFF7F
|
||||||
|
lda #$01
|
||||||
|
sta $9A
|
||||||
|
lda #$08
|
||||||
|
sta $9B
|
||||||
|
jsr STXTPT
|
||||||
|
LFF7F:
|
||||||
|
lda $9A
|
||||||
|
sta $0503
|
||||||
|
lda $9B
|
||||||
|
sta $0504
|
||||||
|
lda #$ED
|
||||||
|
sta $0512
|
||||||
|
lda #$05
|
||||||
|
sta $01
|
||||||
|
LFF92:
|
||||||
|
ldx $0512
|
||||||
|
beq LFF21
|
||||||
|
ldy #$04
|
||||||
|
jsr LE4C4
|
||||||
|
lda $01
|
||||||
|
cmp $0511
|
||||||
|
bne LFFB2
|
||||||
|
lda #$00
|
||||||
|
sta $01
|
||||||
|
lda $00
|
||||||
|
cmp $0513
|
||||||
|
beq LFF92
|
||||||
|
lda #$18
|
||||||
|
bne LFFB8
|
||||||
|
LFFB2:
|
||||||
|
lda #$27
|
||||||
|
bne LFFB8
|
||||||
|
LFFB6:
|
||||||
|
lda #$3C
|
||||||
|
LFFB8:
|
||||||
|
sta JMPADRS
|
||||||
|
jsr CLEARC
|
||||||
|
LFFBD:
|
||||||
|
jsr VARTAB_MINUS_2_TO_AY
|
||||||
|
sta $9A
|
||||||
|
sty $9B
|
||||||
|
lda #$00
|
||||||
|
tay
|
||||||
|
sta ($9A),y
|
||||||
|
iny
|
||||||
|
sta ($9A),y
|
||||||
|
ldx JMPADRS
|
||||||
|
jmp ERROR
|
||||||
|
LFFD1:
|
||||||
|
ldx #$00
|
||||||
|
LFFD3:
|
||||||
|
lda #$02
|
||||||
|
.byte $2C
|
||||||
|
LFFD6:
|
||||||
|
lda #$03
|
||||||
|
jsr LDE8C
|
||||||
|
asl FACSIGN
|
||||||
|
LFFDD:
|
||||||
|
jsr CHRGOT
|
||||||
|
beq LFFE5
|
||||||
|
jmp SYNERR
|
||||||
|
LFFE5:
|
||||||
|
lda #$0D
|
||||||
|
ldy #$00
|
||||||
|
jsr LDE8C
|
||||||
|
.byte $06
|
||||||
|
LFFED:
|
||||||
|
lda $034C
|
||||||
|
bmi LFFED
|
||||||
|
ldy #$01
|
||||||
|
lda ($04),y
|
||||||
|
bne LFFB6
|
||||||
|
rts
|
||||||
|
.byte $FF
|
||||||
|
.addr LC000
|
||||||
|
.addr LC000
|
||||||
|
.addr LC009
|
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
5
kim_extra.s
Normal file
5
kim_extra.s
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
.segment "EXTRA"
|
||||||
|
|
||||||
|
RAMSTART2:
|
||||||
|
.byte $08,$29,$25,$20,$60,$2A,$E5,$E4
|
||||||
|
.byte $20,$66,$24,$65,$AC,$04,$A4
|
18
misc3.s
18
misc3.s
@ -1,7 +1,9 @@
|
|||||||
|
; KBD specific patches
|
||||||
|
|
||||||
.segment "CODE"
|
.segment "CODE"
|
||||||
|
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
LF422:
|
VARTAB_MINUS_2_TO_AY:
|
||||||
lda VARTAB
|
lda VARTAB
|
||||||
sec
|
sec
|
||||||
sbc #$02
|
sbc #$02
|
||||||
@ -10,17 +12,21 @@ LF422:
|
|||||||
dey
|
dey
|
||||||
LF42C:
|
LF42C:
|
||||||
rts
|
rts
|
||||||
LF42D:
|
|
||||||
lda Z00,x
|
; ----------------------------------------------------------------------------
|
||||||
|
GET_UPPER:
|
||||||
|
lda INPUTBUFFERX,x
|
||||||
LF430:
|
LF430:
|
||||||
cmp #$61
|
cmp #'a'
|
||||||
bcc LF43A
|
bcc LF43A
|
||||||
cmp #$7B
|
cmp #'z'+1
|
||||||
bcs LF43A
|
bcs LF43A
|
||||||
LF438:
|
LF438:
|
||||||
sbc #$1F
|
sbc #$1F
|
||||||
LF43A:
|
LF43A:
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
; ----------------------------------------------------------------------------
|
||||||
LF43B:
|
LF43B:
|
||||||
ldx #$5D
|
ldx #$5D
|
||||||
LF43D:
|
LF43D:
|
||||||
@ -38,6 +44,8 @@ LF44D:
|
|||||||
bcc LF44D
|
bcc LF44D
|
||||||
RTS4:
|
RTS4:
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
; ----------------------------------------------------------------------------
|
||||||
LF457:
|
LF457:
|
||||||
lda TXTTAB
|
lda TXTTAB
|
||||||
ldx TXTTAB+1
|
ldx TXTTAB+1
|
||||||
|
1
osi.cfg
1
osi.cfg
@ -13,6 +13,7 @@ SEGMENTS {
|
|||||||
CODE: load = BASROM, type = ro;
|
CODE: load = BASROM, type = ro;
|
||||||
CHRGET: load = BASROM, type = ro;
|
CHRGET: load = BASROM, type = ro;
|
||||||
INIT: load = BASROM, type = ro;
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
DUMMY: load = DUMMY; # don't include
|
DUMMY: load = DUMMY; # don't include
|
||||||
}
|
}
|
||||||
|
|
||||||
|
165
osi_extra.s
Normal file
165
osi_extra.s
Normal file
@ -0,0 +1,165 @@
|
|||||||
|
.segment "EXTRA"
|
||||||
|
|
||||||
|
.byte $00,$00
|
||||||
|
LBEE4:
|
||||||
|
lda LBF05
|
||||||
|
lsr a
|
||||||
|
bcc LBEE4
|
||||||
|
lda $FB03
|
||||||
|
sta $FB07
|
||||||
|
and #$7F
|
||||||
|
rts
|
||||||
|
pha
|
||||||
|
LBEF4:
|
||||||
|
lda $FB05
|
||||||
|
bpl LBEF4
|
||||||
|
pla
|
||||||
|
sta $FB04
|
||||||
|
rts
|
||||||
|
lda $FB06
|
||||||
|
lda #$FF
|
||||||
|
.byte $8D
|
||||||
|
.byte $05
|
||||||
|
LBF05:
|
||||||
|
.byte $FB
|
||||||
|
rts
|
||||||
|
LBF07:
|
||||||
|
lda $FC00
|
||||||
|
lsr a
|
||||||
|
bcc LBF07
|
||||||
|
lda $FC01
|
||||||
|
beq LBF07
|
||||||
|
and #$7F
|
||||||
|
rts
|
||||||
|
pha
|
||||||
|
LBF16:
|
||||||
|
lda $FC00
|
||||||
|
lsr a
|
||||||
|
lsr a
|
||||||
|
bcc LBF16
|
||||||
|
pla
|
||||||
|
sta $FC01
|
||||||
|
rts
|
||||||
|
lda #$03
|
||||||
|
sta $FC00
|
||||||
|
lda #$B1
|
||||||
|
sta $FC00
|
||||||
|
rts
|
||||||
|
sta $0202
|
||||||
|
pha
|
||||||
|
txa
|
||||||
|
pha
|
||||||
|
tya
|
||||||
|
pha
|
||||||
|
lda $0202
|
||||||
|
beq LBF6D
|
||||||
|
ldy $0206
|
||||||
|
beq LBF47
|
||||||
|
LBF3F:
|
||||||
|
ldx #$40
|
||||||
|
LBF41:
|
||||||
|
dex
|
||||||
|
bne LBF41
|
||||||
|
dey
|
||||||
|
bne LBF3F
|
||||||
|
LBF47:
|
||||||
|
cmp #$0A
|
||||||
|
beq LBF76
|
||||||
|
cmp #$0D
|
||||||
|
bne LBF55
|
||||||
|
jsr LBFD5
|
||||||
|
jmp LBF6D
|
||||||
|
LBF55:
|
||||||
|
sta $0201
|
||||||
|
jsr LBFC2
|
||||||
|
inc $0200
|
||||||
|
lda $FFE1
|
||||||
|
clc
|
||||||
|
adc $FFE0
|
||||||
|
cmp $0200
|
||||||
|
bmi LBF73
|
||||||
|
LBF6A:
|
||||||
|
jsr LBFDE
|
||||||
|
LBF6D:
|
||||||
|
pla
|
||||||
|
tay
|
||||||
|
pla
|
||||||
|
tax
|
||||||
|
pla
|
||||||
|
rts
|
||||||
|
LBF73:
|
||||||
|
jsr LBFD8
|
||||||
|
LBF76:
|
||||||
|
jsr LBFC2
|
||||||
|
lda $FFE0
|
||||||
|
and #$E0
|
||||||
|
sta $0202
|
||||||
|
ldx #$07
|
||||||
|
LBF83:
|
||||||
|
lda LBFF3,x
|
||||||
|
sta L0207,x
|
||||||
|
dex
|
||||||
|
bpl LBF83
|
||||||
|
ldx LBFFB,y
|
||||||
|
lda #$20
|
||||||
|
ldy $FFE1
|
||||||
|
cpy #$20
|
||||||
|
bmi LBF99
|
||||||
|
asl a
|
||||||
|
LBF99:
|
||||||
|
sta $0208
|
||||||
|
ldy #$00
|
||||||
|
LBF9E:
|
||||||
|
jsr L0207
|
||||||
|
bne LBF9E
|
||||||
|
inc $0209
|
||||||
|
inc $020C
|
||||||
|
cpx $0209
|
||||||
|
bne LBF9E
|
||||||
|
LBFAE:
|
||||||
|
jsr L0207
|
||||||
|
cpy $0202
|
||||||
|
bne LBFAE
|
||||||
|
lda #$20
|
||||||
|
LBFB8:
|
||||||
|
jsr L020A
|
||||||
|
dec $0208
|
||||||
|
bne LBFB8
|
||||||
|
beq LBF6A
|
||||||
|
LBFC2:
|
||||||
|
ldx $0200
|
||||||
|
lda $0201
|
||||||
|
LBFC8:
|
||||||
|
ldy $FFE2
|
||||||
|
bne LBFD1
|
||||||
|
sta $D300,x
|
||||||
|
rts
|
||||||
|
LBFD1:
|
||||||
|
sta $D700,x
|
||||||
|
rts
|
||||||
|
LBFD5:
|
||||||
|
jsr LBFC2
|
||||||
|
LBFD8:
|
||||||
|
lda $FFE0
|
||||||
|
sta $0200
|
||||||
|
LBFDE:
|
||||||
|
ldx $0200
|
||||||
|
lda $D300,x
|
||||||
|
ldy $FFE2
|
||||||
|
beq LBFEC
|
||||||
|
lda $D700,x
|
||||||
|
LBFEC:
|
||||||
|
sta $0201
|
||||||
|
lda #$5F
|
||||||
|
bne LBFC8
|
||||||
|
LBFF3:
|
||||||
|
lda $D000,y
|
||||||
|
sta $D000,y
|
||||||
|
iny
|
||||||
|
rts
|
||||||
|
LBFFB:
|
||||||
|
.byte $D3
|
||||||
|
.byte $D7
|
||||||
|
brk
|
||||||
|
brk
|
||||||
|
brk
|
14
poke.s
14
poke.s
@ -44,10 +44,10 @@ GETADR:
|
|||||||
; "PEEK" FUNCTION
|
; "PEEK" FUNCTION
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
PEEK:
|
PEEK:
|
||||||
.ifdef CBM2_KBD
|
.ifdef CBM2
|
||||||
lda $12
|
lda LINNUM+1
|
||||||
pha
|
pha
|
||||||
lda $11
|
lda LINNUM
|
||||||
pha
|
pha
|
||||||
.endif
|
.endif
|
||||||
jsr GETADR
|
jsr GETADR
|
||||||
@ -59,7 +59,7 @@ PEEK:
|
|||||||
bcc LD6F6
|
bcc LD6F6
|
||||||
LD6F3:
|
LD6F3:
|
||||||
.endif
|
.endif
|
||||||
.ifdef CBM2_KBD
|
.ifdef CBM2
|
||||||
nop ; patch that disables the compares above
|
nop ; patch that disables the compares above
|
||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
@ -71,11 +71,11 @@ LD6F3:
|
|||||||
.endif
|
.endif
|
||||||
lda (LINNUM),y
|
lda (LINNUM),y
|
||||||
tay
|
tay
|
||||||
.ifdef CBM2_KBD
|
.ifdef CBM2
|
||||||
pla
|
pla
|
||||||
sta $11
|
sta LINNUM
|
||||||
pla
|
pla
|
||||||
sta $12
|
sta LINNUM+1
|
||||||
.endif
|
.endif
|
||||||
LD6F6:
|
LD6F6:
|
||||||
jmp SNGFLT
|
jmp SNGFLT
|
||||||
|
@ -302,7 +302,7 @@ PLOD:
|
|||||||
iny
|
iny
|
||||||
sty JMPADRS
|
sty JMPADRS
|
||||||
jsr LFFD3
|
jsr LFFD3
|
||||||
jsr LF422
|
jsr VARTAB_MINUS_2_TO_AY
|
||||||
ldx #$02
|
ldx #$02
|
||||||
jsr LFF64
|
jsr LFF64
|
||||||
ldx #$6F
|
ldx #$6F
|
||||||
@ -495,13 +495,13 @@ L2497:
|
|||||||
inx
|
inx
|
||||||
L2498:
|
L2498:
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
jsr LF42D
|
jsr GET_UPPER
|
||||||
.else
|
.else
|
||||||
lda INPUTBUFFERX,x
|
lda INPUTBUFFERX,x
|
||||||
.ifndef CBM2
|
.ifndef CBM2
|
||||||
cmp #$20
|
cmp #$20
|
||||||
beq L2497
|
beq L2497
|
||||||
.endif
|
.endif
|
||||||
.endif
|
.endif
|
||||||
sec
|
sec
|
||||||
sbc TOKEN_NAME_TABLE,y
|
sbc TOKEN_NAME_TABLE,y
|
||||||
|
Loading…
x
Reference in New Issue
Block a user