mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-10 07:54:37 +00:00
311 lines
4.8 KiB
Plaintext
311 lines
4.8 KiB
Plaintext
|
NEW
|
|||
|
AUTO 3,1
|
|||
|
*--------------------------------------
|
|||
|
LDR.START jmp LDR.START1
|
|||
|
LDR.SIG .DA $EEEE
|
|||
|
.DA #MLI.MAXPATH+1
|
|||
|
LDR.STARTUP.LEN .DA #7
|
|||
|
LDR.STARTUP .AS "STARTUP"
|
|||
|
.BS MLI.MAXPATH-7
|
|||
|
LDR.START1 lda #$9A
|
|||
|
sta Ptr2+1
|
|||
|
lda #$24
|
|||
|
sta Ptr1+1
|
|||
|
lda #$00
|
|||
|
sta Ptr1
|
|||
|
sta Ptr2
|
|||
|
ldx #$23
|
|||
|
tay
|
|||
|
jsr LDR.MoveXpages
|
|||
|
ldx #$01
|
|||
|
lda #$BE
|
|||
|
sta Ptr2+1
|
|||
|
jsr LDR.MoveXpages
|
|||
|
lda #$15
|
|||
|
jsr MON.COUT
|
|||
|
jsr MON.SETNORM
|
|||
|
jsr MON.INIT
|
|||
|
jsr MON.MON
|
|||
|
ldx #$17
|
|||
|
lda #$00
|
|||
|
|
|||
|
L2076 sta MLI.MEMTABL,x
|
|||
|
dex
|
|||
|
bne L2076
|
|||
|
|
|||
|
lda #$CF
|
|||
|
sta MLI.MEMTABL
|
|||
|
lda #$3F
|
|||
|
sta MLI.MEMTABL+19
|
|||
|
lda #$FF
|
|||
|
sta MLI.MEMTABL+20
|
|||
|
sta MLI.MEMTABL+21
|
|||
|
sta MLI.MEMTABL+22
|
|||
|
lda #$C3
|
|||
|
sta MLI.MEMTABL+23
|
|||
|
lda AS.COLDBOOT
|
|||
|
cmp #$4C
|
|||
|
bne L20B1
|
|||
|
|
|||
|
lda MLI.MACHID
|
|||
|
and #$20
|
|||
|
beq L20B1
|
|||
|
|
|||
|
ldx #$03
|
|||
|
|
|||
|
L20A6 lda LDR.CSWVECT,x
|
|||
|
sta ZP.CSW,x
|
|||
|
dex
|
|||
|
bpl L20A6
|
|||
|
|
|||
|
jmp AS.COLDBOOT
|
|||
|
|
|||
|
L20B1 ldx #$27
|
|||
|
|
|||
|
L20B3 lda LDR.UNABLE,x
|
|||
|
sta $628,x
|
|||
|
dex
|
|||
|
bpl L20B3
|
|||
|
|
|||
|
sta MON.POWERUPBYTE
|
|||
|
sta MON.POWERUP+1
|
|||
|
|
|||
|
L20C2 bmi L20C2
|
|||
|
|
|||
|
LDR.MoveXpages dey
|
|||
|
lda (Ptr1),y
|
|||
|
sta (Ptr2),y
|
|||
|
tya
|
|||
|
bne LDR.MoveXpages
|
|||
|
|
|||
|
inc Ptr1+1
|
|||
|
inc Ptr2+1
|
|||
|
dex
|
|||
|
bne LDR.MoveXpages
|
|||
|
|
|||
|
L20D3 rts
|
|||
|
|
|||
|
LDR.CSW cmp #$DD
|
|||
|
bne L20D3
|
|||
|
|
|||
|
lda GP.OUTVECT0
|
|||
|
sta ZP.CSW
|
|||
|
lda GP.OUTVECT0+1
|
|||
|
sta ZP.CSW+1
|
|||
|
lda MLI.DEVNUM
|
|||
|
sta LDR.ONLINE.P.DEVNUM
|
|||
|
ldx #$01
|
|||
|
asl
|
|||
|
bcc L20EE
|
|||
|
|
|||
|
inx
|
|||
|
|
|||
|
L20EE stx GP.VDEFDRV
|
|||
|
asl
|
|||
|
rol
|
|||
|
rol
|
|||
|
rol
|
|||
|
and #$07
|
|||
|
sta GP.VDEFSLT
|
|||
|
ldx #$C1
|
|||
|
ldy #$02
|
|||
|
lda MLI.SLTBYT
|
|||
|
lsr
|
|||
|
|
|||
|
L2102 lsr
|
|||
|
pha
|
|||
|
bcc L2115
|
|||
|
|
|||
|
lda #$00
|
|||
|
sta GP.OUTVECT0,y
|
|||
|
sta GP.INVECT0,y
|
|||
|
txa
|
|||
|
sta GP.OUTVECT0+1,y
|
|||
|
sta GP.INVECT0+1,y
|
|||
|
|
|||
|
L2115 iny
|
|||
|
iny
|
|||
|
inx
|
|||
|
pla
|
|||
|
bne L2102
|
|||
|
|
|||
|
lda #$96
|
|||
|
sta AS.HIMEM+1
|
|||
|
sta AS.STRINGSTART+1
|
|||
|
sta GP.RSHIMEM
|
|||
|
lda MLI.PFIXPTR
|
|||
|
beq L214E
|
|||
|
|
|||
|
jsr MLI
|
|||
|
.DA #MLI.C.GETPREFIX
|
|||
|
.DA LDR.GETSETPFX2.P
|
|||
|
bne L218B
|
|||
|
|
|||
|
ldx MLI.PATHBUF
|
|||
|
lda #$2F
|
|||
|
|
|||
|
L2136 cmp MLI.PATHBUF,x
|
|||
|
bne L213E
|
|||
|
|
|||
|
inc LDR.PFXLEN
|
|||
|
|
|||
|
L213E dex
|
|||
|
bne L2136
|
|||
|
|
|||
|
lda LDR.PFXLEN
|
|||
|
cmp #$03
|
|||
|
bcs L216F
|
|||
|
|
|||
|
jsr MLI
|
|||
|
.DA #MLI.C.SETPREFIX
|
|||
|
.DA LDR.GETSETPFX1.P
|
|||
|
|
|||
|
L214E jsr MLI
|
|||
|
.DA #MLI.C.ONLINE
|
|||
|
.DA LDR.ONLINE.P
|
|||
|
bne L218B
|
|||
|
|
|||
|
lda MLI.PATHBUF+1
|
|||
|
and #$0F
|
|||
|
beq L218B
|
|||
|
|
|||
|
tax
|
|||
|
inx
|
|||
|
stx MLI.PATHBUF
|
|||
|
lda #$2F
|
|||
|
sta MLI.PATHBUF+1
|
|||
|
jsr MLI
|
|||
|
.DA #MLI.C.SETPREFIX
|
|||
|
.DA LDR.GETSETPFX2.P
|
|||
|
bne L218B
|
|||
|
|
|||
|
L216F jsr MLI
|
|||
|
.DA #MLI.C.GETFILEINFO
|
|||
|
.DA LDR.GFINFO.P
|
|||
|
bne L218B
|
|||
|
|
|||
|
ldx LDR.STARTUP.LEN
|
|||
|
stx LDR.STARTUP.LEN1
|
|||
|
|
|||
|
L217D lda LDR.STARTUP.LEN,x
|
|||
|
sta IO.LINEBUF,x
|
|||
|
dex
|
|||
|
bne L217D
|
|||
|
|
|||
|
lda #$AD
|
|||
|
sta IO.LINEBUF
|
|||
|
|
|||
|
L218B lda LDR.PFXLEN
|
|||
|
cmp #$03
|
|||
|
bcs L2198
|
|||
|
|
|||
|
jsr MLI
|
|||
|
.DA #MLI.C.SETPREFIX
|
|||
|
.DA LDR.GETSETPFX1.P
|
|||
|
|
|||
|
L2198 lda LDR.STARTUP.LEN1
|
|||
|
bne L21C1
|
|||
|
|
|||
|
jsr LDR.KSW
|
|||
|
ldx #$1C
|
|||
|
|
|||
|
L21A2 lda LDR.PRODOSBASIC,x
|
|||
|
sta $400,x
|
|||
|
dex
|
|||
|
bpl L21A2
|
|||
|
|
|||
|
ldx #$1F
|
|||
|
|
|||
|
L21AD lda LDR.COPYRIGHT,x
|
|||
|
sta $480,x
|
|||
|
dex
|
|||
|
bpl L21AD
|
|||
|
|
|||
|
lda #$8D
|
|||
|
jsr MON.COUT1
|
|||
|
jsr MON.COUT1
|
|||
|
jsr MON.COUT1
|
|||
|
|
|||
|
L21C1 ldx #$02
|
|||
|
L21C3 lda LDR.JMP.GP.ENTRY,x
|
|||
|
sta DOS.WARMSTART,x
|
|||
|
sta DOS.COLDSTART,x
|
|||
|
sta MON.USRJMP,x
|
|||
|
lda LDR.AMPERSANDJMP,x
|
|||
|
sta MON.AMPERSANDJMP,x
|
|||
|
dex
|
|||
|
bpl L21C3
|
|||
|
|
|||
|
lda LDR.BRKVECT
|
|||
|
sta MON.BRKVECT
|
|||
|
lda LDR.BRKVECT+1
|
|||
|
sta MON.BRKVECT+1
|
|||
|
lda LDR.POWERUP
|
|||
|
sta MON.POWERUP
|
|||
|
lda LDR.POWERUP+1
|
|||
|
sta MON.POWERUP+1
|
|||
|
eor #$A5
|
|||
|
sta MON.POWERUPBYTE
|
|||
|
lda #$A5
|
|||
|
sta AS.TRCFLG
|
|||
|
lda BS.IVERSION
|
|||
|
sta MLI.IVERSION
|
|||
|
|
|||
|
LDR.JMP.GP.ENTRY
|
|||
|
jmp GP.ENTRY
|
|||
|
|
|||
|
LDR.BRKVECT .DA MON.BREAKV
|
|||
|
LDR.POWERUP .DA GP.ENTRY
|
|||
|
|
|||
|
LDR.AMPERSANDJMP
|
|||
|
jmp GP.DOSCMD
|
|||
|
|
|||
|
LDR.KSW lda GP.INVECT0
|
|||
|
sta ZP.KSW
|
|||
|
lda GP.INVECT0+1
|
|||
|
sta ZP.KSW+1
|
|||
|
ldx LDR.STARTUP.LEN
|
|||
|
inx
|
|||
|
lda #$8D
|
|||
|
rts
|
|||
|
|
|||
|
LDR.CSWVECT .DA LDR.CSW
|
|||
|
LDR.KSWVECT .DA LDR.KSW
|
|||
|
LDR.GFINFO.P .DA #10
|
|||
|
LDR.GFINFO.P.PATHBUF
|
|||
|
.DA LDR.STARTUP.LEN
|
|||
|
|
|||
|
.BS 16
|
|||
|
|
|||
|
LDR.GETSETPFX1.P
|
|||
|
.DA #1
|
|||
|
LDR.GETSETPFX1.P.BUF
|
|||
|
.DA LDR.GETSETPFX1.SLASHLEN
|
|||
|
LDR.GETSETPFX1.SLASHLEN
|
|||
|
.DA #1
|
|||
|
LDR.GETSETPFX1.SLASH
|
|||
|
.AS "/"
|
|||
|
LDR.STARTUP.LEN1
|
|||
|
.DA #0
|
|||
|
LDR.ONLINE.P
|
|||
|
.DA #2
|
|||
|
LDR.ONLINE.P.DEVNUM
|
|||
|
.DA #$70
|
|||
|
LDR.ONLINE.P.BUF
|
|||
|
.DA MLI.PATHBUF+1
|
|||
|
LDR.GETSETPFX2.P
|
|||
|
.DA #1
|
|||
|
LDR.GETSETPFX2.P.BUF
|
|||
|
.DA MLI.PATHBUF
|
|||
|
LDR.PFXLEN .DA #0
|
|||
|
|
|||
|
LDR.UNABLE .AS -"*** UNABLE TO EXECUTE BASIC SYSTEM ***"
|
|||
|
LDR.PRODOSBASIC .AS -" PRODOS BASIC 1.5 "
|
|||
|
LDR.COPYRIGHT .AS -" COPYRIGHT APPLE 1983-92"
|
|||
|
.BS $2400-*
|
|||
|
*--------------------------------------
|
|||
|
MAN
|
|||
|
SAVE usr/src/basic.15/basic.s.ldr
|
|||
|
LOAD usr/src/basic.15/basic.s
|
|||
|
ASM
|