mirror of
https://github.com/bobbimanners/Applecorn.git
synced 2025-08-07 17:25:12 +00:00
Deleted commented out code.
This commit is contained in:
BIN
applecorn.po
BIN
applecorn.po
Binary file not shown.
200
auxmem.oscli.s
200
auxmem.oscli.s
@@ -515,203 +515,3 @@ EATSPC LDA (ZP1),Y ; Check first char is ...
|
|||||||
:NOTFND SEC
|
:NOTFND SEC
|
||||||
RTS
|
RTS
|
||||||
|
|
||||||
** Consume chars in command line until space or " is found
|
|
||||||
** Command line pointer in (ZP1),Y
|
|
||||||
** Returns with carry set if EOL
|
|
||||||
*EATWORD LDA (ZP1),Y
|
|
||||||
* CMP #' '
|
|
||||||
* BEQ :SPC
|
|
||||||
* CMP #'"'
|
|
||||||
* BEQ :SPC
|
|
||||||
* CMP #$0D ; Carriage return
|
|
||||||
* BEQ :EOL
|
|
||||||
* INY
|
|
||||||
* BRA EATWORD
|
|
||||||
*:SPC CLC
|
|
||||||
* RTS
|
|
||||||
*:EOL SEC
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
** Add Y to ZP1 pointer. Clear Y.
|
|
||||||
*ADDZP1Y CLC
|
|
||||||
* TYA
|
|
||||||
* ADC ZP1
|
|
||||||
* STA ZP1
|
|
||||||
* LDA #$00
|
|
||||||
* ADC ZP1+1
|
|
||||||
* STA ZP1+1
|
|
||||||
* LDY #$00
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
** Decode ASCII hex digit in A
|
|
||||||
** Returns with carry set if bad char, C clear otherwise
|
|
||||||
*HEXDIGIT CMP #'F'+1
|
|
||||||
* BCS :BADCHAR ; char > 'F'
|
|
||||||
* CMP #'A'
|
|
||||||
* BCC :S1
|
|
||||||
* SEC ; 'A' <= char <= 'F'
|
|
||||||
* SBC #'A'-10
|
|
||||||
* CLC
|
|
||||||
* RTS
|
|
||||||
*:S1 CMP #'9'+1
|
|
||||||
* BCS :BADCHAR ; '9' < char < 'A'
|
|
||||||
* CMP #'0'
|
|
||||||
* BCC :BADCHAR ; char < '0'
|
|
||||||
* SEC ; '0' <= char <= '9'
|
|
||||||
* SBC #'0'
|
|
||||||
* CLC
|
|
||||||
* RTS
|
|
||||||
*:BADCHAR SEC
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
** Decode hex constant on command line
|
|
||||||
** On entry, ZP1 points to command line
|
|
||||||
*HEXCONST LDX #$00
|
|
||||||
*:L1 STZ :BUF,X ; Clear :BUF
|
|
||||||
* INX
|
|
||||||
* CPX #$04
|
|
||||||
* BNE :L1
|
|
||||||
* LDX #$00
|
|
||||||
* LDY #$00
|
|
||||||
*:L2 LDA (ZP1),Y ; Parse hex digits into
|
|
||||||
* JSR HEXDIGIT ; :BUF, left aligned
|
|
||||||
* BCS :NOTHEX
|
|
||||||
* STA :BUF,X
|
|
||||||
* INY
|
|
||||||
* INX
|
|
||||||
* CPX #$04
|
|
||||||
* BNE :L2
|
|
||||||
* LDA (ZP1),Y ; Peek at next char
|
|
||||||
*:NOTHEX CPX #$00 ; Was it the first digit?
|
|
||||||
* BEQ :ERR ; If so, bad hex constant
|
|
||||||
* CMP #' ' ; If whitespace, then okay
|
|
||||||
* BEQ :OK
|
|
||||||
* CMP #$0D
|
|
||||||
* BEQ :OK
|
|
||||||
*:ERR SEC
|
|
||||||
* RTS
|
|
||||||
*:OK LDA :BUF-4,X
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ORA :BUF-3,X
|
|
||||||
* STA ADDRBUF+1
|
|
||||||
* LDA :BUF-2,X
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ASL
|
|
||||||
* ORA :BUF-1,X
|
|
||||||
* STA ADDRBUF
|
|
||||||
* CLC
|
|
||||||
* RTS
|
|
||||||
*:ZEROPAD DB $00,$00,$00
|
|
||||||
*:BUF DB $00,$00,$00,$00
|
|
||||||
*
|
|
||||||
*ADDRBUF DW $0000 ; Used by HEXCONST
|
|
||||||
*
|
|
||||||
** Handle *LOAD command
|
|
||||||
*STARLOAD
|
|
||||||
** TEMP
|
|
||||||
* STX ZP1+0 ; need (ZP1),Y=>parameters
|
|
||||||
* STY ZP1+1
|
|
||||||
* LDY #$00
|
|
||||||
** TEMP
|
|
||||||
** On entry, ZP1 points to command line
|
|
||||||
* JSR CLRCB
|
|
||||||
*; JSR EATSPC ; Eat leading spaces
|
|
||||||
*; BCS :ERR
|
|
||||||
* JSR ADDZP1Y ; Advance ZP1
|
|
||||||
* LDA ZP1 ; Pointer to filename
|
|
||||||
* STA OSFILECB
|
|
||||||
* LDA ZP1+1
|
|
||||||
* STA OSFILECB+1
|
|
||||||
* JSR EATWORD ; Advance past filename
|
|
||||||
* BCS :NOADDR ; No load address given
|
|
||||||
* LDA #$0D ; Carriage return
|
|
||||||
* STA (ZP1),Y ; Terminate filename
|
|
||||||
* INY
|
|
||||||
* JSR EATSPC ; Eat any whitespace
|
|
||||||
* JSR ADDZP1Y ; Update ZP1
|
|
||||||
* JSR HEXCONST
|
|
||||||
* BCS :ERR ; Bad hex constant
|
|
||||||
* LDA ADDRBUF
|
|
||||||
* STA OSFILECB+2 ; Load address LSB
|
|
||||||
* LDA ADDRBUF+1
|
|
||||||
* STA OSFILECB+3 ; Load address MSB
|
|
||||||
*:OSFILE LDX #<OSFILECB
|
|
||||||
* LDY #>OSFILECB
|
|
||||||
* LDA #$FF ; OSFILE load flag
|
|
||||||
* JSR OSFILE
|
|
||||||
*:END RTS
|
|
||||||
*:NOADDR LDA #$FF ; Set OSFILECB+6 to non-zero
|
|
||||||
* STA OSFILECB+6 ; Means use the file's addr
|
|
||||||
* BRA :OSFILE
|
|
||||||
*:ERR JMP ERRBADADD
|
|
||||||
*
|
|
||||||
** Handle *SAVE command
|
|
||||||
*STARSAVE
|
|
||||||
** TEMP
|
|
||||||
* STX ZP1+0 ; need (ZP1),Y=>parameters
|
|
||||||
* STY ZP1+1
|
|
||||||
* LDY #$00
|
|
||||||
** TEMP
|
|
||||||
** On entry, ZP1 points to command line
|
|
||||||
* JSR CLRCB
|
|
||||||
*; JSR EATSPC ; Eat leading space
|
|
||||||
*; BCS :ERR
|
|
||||||
* JSR ADDZP1Y ; Advance ZP1
|
|
||||||
* LDA ZP1 ; Pointer to filename
|
|
||||||
* STA OSFILECB
|
|
||||||
* LDA ZP1+1
|
|
||||||
* STA OSFILECB+1
|
|
||||||
* JSR EATWORD
|
|
||||||
* BCS :ERR ; No start address given
|
|
||||||
* LDA #$0D ; Carriage return
|
|
||||||
* STA (ZP1),Y ; Terminate filename
|
|
||||||
* INY
|
|
||||||
* JSR EATSPC ; Eat any whitespace
|
|
||||||
* JSR ADDZP1Y ; Update ZP1
|
|
||||||
* JSR HEXCONST
|
|
||||||
* BCS :ERR ; Bad start address
|
|
||||||
* LDA ADDRBUF
|
|
||||||
* STA OSFILECB+10
|
|
||||||
* LDA ADDRBUF+1
|
|
||||||
* STA OSFILECB+11
|
|
||||||
* JSR EATSPC ; Eat any whitespace
|
|
||||||
* JSR ADDZP1Y ; Update ZP1
|
|
||||||
* JSR HEXCONST
|
|
||||||
* BCS :ERR ; Bad end address
|
|
||||||
* LDA ADDRBUF
|
|
||||||
* STA OSFILECB+14
|
|
||||||
* LDA ADDRBUF+1
|
|
||||||
* STA OSFILECB+15
|
|
||||||
* LDX #<OSFILECB
|
|
||||||
* LDY #>OSFILECB
|
|
||||||
* LDA #$00 ; OSFILE save flag
|
|
||||||
* JSR OSFILE
|
|
||||||
*:END RTS
|
|
||||||
*:ERR JMP ERRBADADD
|
|
||||||
*
|
|
||||||
** Handle *RUN command
|
|
||||||
** On entry, ZP1 points to command line
|
|
||||||
*STARRUN LDA #$04
|
|
||||||
*JUMPFSCV PHA
|
|
||||||
* JSR EATSPC ; Eat leading spaces
|
|
||||||
* JSR ADDZP1Y
|
|
||||||
* LDX ZP1+0
|
|
||||||
* LDY ZP1+1
|
|
||||||
* PLA
|
|
||||||
* AND #$7F ; A=command, XY=>parameters
|
|
||||||
*CALLFSCV JMP (FSCV) ; Hand on to filing system
|
|
||||||
*
|
|
||||||
** Clear OSFILE control block to zeros
|
|
||||||
*CLRCB LDA #$00
|
|
||||||
* LDX #$00
|
|
||||||
*:L1 STA OSFILECB,X
|
|
||||||
* INX
|
|
||||||
* CPX #18
|
|
||||||
* BNE :L1
|
|
||||||
* RTS
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user