msbasic/osi_extra.s

164 lines
2.8 KiB
ArmAsm
Raw Normal View History

2008-10-13 10:42:49 +00:00
.segment "EXTRA"
.byte $00,$00
LBEE4:
2008-10-19 06:00:50 +00:00
lda LBF03+2
2008-10-13 10:42:49 +00:00
lsr a
bcc LBEE4
2008-10-19 06:00:50 +00:00
lda LFB00+3
sta LFB00+7
2008-10-13 10:42:49 +00:00
and #$7F
rts
pha
LBEF4:
2008-10-19 06:00:50 +00:00
lda LFB00+5
2008-10-13 10:42:49 +00:00
bpl LBEF4
pla
2008-10-19 06:00:50 +00:00
sta LFB00+4
2008-10-13 10:42:49 +00:00
rts
2008-10-19 06:00:50 +00:00
lda LFB00+6
2008-10-13 10:42:49 +00:00
lda #$FF
2008-10-19 06:00:50 +00:00
LBF03:
sta LFB00+5
2008-10-13 10:42:49 +00:00
rts
LBF07:
2008-10-19 06:00:50 +00:00
lda LFC00
2008-10-13 10:42:49 +00:00
lsr a
bcc LBF07
2008-10-19 06:00:50 +00:00
lda LFC00+1
2008-10-13 10:42:49 +00:00
beq LBF07
and #$7F
rts
pha
LBF16:
2008-10-19 06:00:50 +00:00
lda LFC00
2008-10-13 10:42:49 +00:00
lsr a
lsr a
bcc LBF16
pla
2008-10-19 06:00:50 +00:00
sta LFC00+1
2008-10-13 10:42:49 +00:00
rts
lda #$03
2008-10-19 06:00:50 +00:00
sta LFC00
2008-10-13 10:42:49 +00:00
lda #$B1
2008-10-19 06:00:50 +00:00
sta LFC00
2008-10-13 10:42:49 +00:00
rts
2008-10-19 06:00:50 +00:00
sta L0200+2
2008-10-13 10:42:49 +00:00
pha
txa
pha
tya
pha
2008-10-19 06:00:50 +00:00
lda L0200+2
2008-10-13 10:42:49 +00:00
beq LBF6D
2008-10-19 06:00:50 +00:00
ldy L0200+6
2008-10-13 10:42:49 +00:00
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:
2008-10-19 06:00:50 +00:00
sta L0200+1
2008-10-13 10:42:49 +00:00
jsr LBFC2
2008-10-19 06:00:50 +00:00
inc L0200+0
lda LFFE0+1
2008-10-13 10:42:49 +00:00
clc
2008-10-19 06:00:50 +00:00
adc LFFE0+0
cmp L0200+0
2008-10-13 10:42:49 +00:00
bmi LBF73
LBF6A:
jsr LBFDE
LBF6D:
pla
tay
pla
tax
pla
rts
LBF73:
jsr LBFD8
LBF76:
jsr LBFC2
2008-10-19 06:00:50 +00:00
lda LFFE0
2008-10-13 10:42:49 +00:00
and #$E0
2008-10-19 06:00:50 +00:00
sta L0200+2
2008-10-13 10:42:49 +00:00
ldx #$07
LBF83:
lda LBFF3,x
2008-10-19 06:00:50 +00:00
sta L0200+7,x
2008-10-13 10:42:49 +00:00
dex
bpl LBF83
ldx LBFFB,y
lda #$20
2008-10-19 06:00:50 +00:00
ldy LFFE0+1
2008-10-13 10:42:49 +00:00
cpy #$20
bmi LBF99
asl a
LBF99:
2008-10-19 06:00:50 +00:00
sta L0200+8
2008-10-13 10:42:49 +00:00
ldy #$00
LBF9E:
2008-10-19 06:00:50 +00:00
jsr L0200+7
2008-10-13 10:42:49 +00:00
bne LBF9E
2008-10-19 06:00:50 +00:00
inc L0200+9
inc L0200+12
cpx L0200+9
2008-10-13 10:42:49 +00:00
bne LBF9E
LBFAE:
2008-10-19 06:00:50 +00:00
jsr L0200+7
cpy L0200+2
2008-10-13 10:42:49 +00:00
bne LBFAE
lda #$20
LBFB8:
2008-10-19 06:00:50 +00:00
jsr L0200+10
dec L0200+8
2008-10-13 10:42:49 +00:00
bne LBFB8
beq LBF6A
LBFC2:
2008-10-19 06:00:50 +00:00
ldx L0200+0
lda L0200+1
2008-10-13 10:42:49 +00:00
LBFC8:
2008-10-19 06:00:50 +00:00
ldy LFFE0+2
2008-10-13 10:42:49 +00:00
bne LBFD1
2008-10-19 06:00:50 +00:00
sta LD300,x
2008-10-13 10:42:49 +00:00
rts
LBFD1:
2008-10-19 06:00:50 +00:00
sta LD700,x
2008-10-13 10:42:49 +00:00
rts
LBFD5:
jsr LBFC2
LBFD8:
2008-10-19 06:00:50 +00:00
lda LFFE0
sta L0200+0
2008-10-13 10:42:49 +00:00
LBFDE:
2008-10-19 06:00:50 +00:00
ldx L0200+0
lda LD300,x
ldy LFFE0+2
2008-10-13 10:42:49 +00:00
beq LBFEC
2008-10-19 06:00:50 +00:00
lda LD700,x
2008-10-13 10:42:49 +00:00
LBFEC:
2008-10-19 06:00:50 +00:00
sta L0200+1
2008-10-13 10:42:49 +00:00
lda #$5F
bne LBFC8
LBFF3:
2008-10-19 06:00:50 +00:00
lda LD000,y
sta LD000,y
2008-10-13 10:42:49 +00:00
iny
rts
LBFFB:
.byte $D3
.byte $D7
brk
brk
brk