home *** CD-ROM | disk | FTP | other *** search
- ;BPUT"READBOOT.SRC"
- ;RPUT"READBOOT.SRC"
- ;
- .LIB HARDJUMP.EQ
- .LIB HARDISKZ.EQ
- ;
- * = $0840
- START JSR HDINIT ;INIT CTL BLOCKS
- JSR RESET ;ISSUE THE RESET
- BCS RESETERROR
- LDA #$80
- LDY #$28 ;GET NUMBER OF SECTORS TO READ
- LDX #$40 ;GET SECTOR NUMBER
- JSR READIT ;GO CONVERT AND READ
- BCS READERROR ;GO IF BAD
- LDA #$E0 ;ADDRESS INPUT AREA
- LDY #$10
- LDX #$69
- JSR READIT
- BCS READERROR
- JSR 52224
- JMP $C000 ;END
- ;
- READIT STA BUFADR+1 ;ADDRESS INPUT
- STY BLKCNT ;# 512 BYTE BLOCKS
- STX SECNUM+2
- LDA #0
- STA HDNUM ;CLEAR THE DRIVE NUMBER
- STA SECNUM
- STA SECNUM+1
- JSR SEC2CYLDCB ;CONVERT TO DISK ADDR
- LDA HEAD ;FILL THE DCB
- STA HDNUM
- LDA CYLLSB ;GET LOW CYL ADDR
- STA CYLNUM
- LDA CYLMSB ;GET HI CYL AND SECTOR
- STA SECADR ;PUT IN DCB
- JMP READ ;READ AND RETURN TO CALLER
- ;
- RESETERROR LDX #0
- .BYT $2C ;
- READERROR LDX #0
- READERRORL LDA RESETMSG,X
- BEQ DONE
- JSR $FFD2
- INX
- BNE READERRORL
- DONE RTS
- BRK
- ;
- RESETMSG .BYT 'RESET FAILED',13,0
- READERRMSG .BYT 'READ FAILED',13,0
- .END