home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-07-08 | 7.8 KB | 214 lines | [04] ASCII Text (0x0000) |
- ;
- ; EDIT.SRC3
- ;
- ;==================================================
- INSERT JSR FINDEND ;START AT END AND MOVE 4 BYTES FORWARD
- INSERT1 DEC MISCPTR ;UNTIL YOU REACH CURRENT ADDRESS
- LDA MISCPTR
- CMP #$FF
- BNE INSERT2
- DEC MISCPTR+1
- INSERT2 LDY #$00
- LDA (MISCPTR),Y
- LDY #$04
- STA (MISCPTR),Y
- LDA MISCPTR
- CMP PTR
- BNE INSERT1
- LDA MISCPTR+1
- CMP PTR+1
- BNE INSERT1
- LDA #$80 ;AT CURRENT ADRS, INSERT MARKER
- LDY #$00 ; $80 $00 $00 $00
- STA (PTR),Y
- LDA #$00
- INY
- STA (PTR),Y
- INY
- STA (PTR),Y
- INY
- STA (PTR),Y
- RTS
- ;
- ;================================================== *KEY*
- ESC JSR FINDEND
- LDA #$C5 ;PRINT E=
- JSR $FDED
- LDA #$A4
- JSR $FDED
- LDA MISCPTR+1 ;PRINT ENDING ADDRESS
- JSR $FDDA
- LDA MISCPTR
- JSR $FDDA
- PLA ;POP OUTTA HERE
- PLA
- PLA
- PLA
- RTS ;THIS IS THE END.
- ;==================================================
- FINDMARK LDA SRCHSTRT
- STA SRCHPTR
- LDA SRCHSTRT+1
- STA SRCHPTR+1
- CLV
- BVC STARSRCH
- ;
- INCSPTR CLC
- LDA SRCHPTR
- ADC #$04
- STA SRCHPTR
- LDA SRCHPTR+1
- ADC #$00
- STA SRCHPTR+1
- ;
- STARSRCH LDA SRCHPTR
- STA MISCPTR
- LDA SRCHPTR+1
- STA MISCPTR+1
- LDY #$00
- LDA (MISCPTR),Y
- BEQ BELL ;IF NOT FOUND, BEEP
- CMP PATTERN
- BNE INCSPTR
- INY
- LDA (MISCPTR),Y
- CMP PATTERN+1
- BNE INCSPTR
- INY
- LDA (MISCPTR),Y
- CMP PATTERN+2
- BNE INCSPTR
- INY
- LDA (MISCPTR),Y
- CMP PATTERN+3
- BNE INCSPTR
- LDA MISCPTR ;FOUND IT! LET'S GO THERE!
- STA PTR
- LDA MISCPTR+1
- STA PTR+1
- RTS
- ;
- BELL LDA #$87 ;SORRY, NOT FOUND
- JSR $FDED
- RTS
- ;================================================== *KEY*
- RTPAREN LDY #$03 ;ADD TO VOLUME
- LDA (PTR),Y
- CLC
- ADC #$01
- STA (PTR),Y
- JMP BREAKOUT
- RTS
- ;================================================== *KEY*
- LTPAREN LDY #$03 ;SUBTR FROM VOLUME
- LDA (PTR),Y
- SEC
- SBC #$01
- STA (PTR),Y
- JMP BREAKOUT
- RTS
- ;================================================== *KEY*
- CTRLI JSR INSERT
- ;
- BREAKOUT JSR DISPNOTE
- JMP WAITKEY
- ;
- ;==================================================
- HEXERROR LDA #$87 ;DING DONG THE STUPID USER
- JSR $FDED
- HEXINPUT LDA $C000
- BPL HEXINPUT
- STA $C010
- AND #$7F
- CMP #$30 ;LESS THAN 0?
- BCC HEXERROR
- CMP #$47 ;GREATER THAN F?
- BCS HEXERROR
- CMP #$3A
- BCC GOODHEX
- CMP #$41
- BCC HEXERROR ;AFTER 9 OR BEFORE A?
- SEC
- SBC #$07 ;IF BETWEEN A AND F, SUBTR 7
- ;
- GOODHEX SEC
- SBC #$30 ;CONVERT ASCII TO BINARY
- PHA
- JSR $FDE3 ;PRINT ONE HEX NIBBLE
- PLA
- RTS
- ;================================================== *KEY*
- GKEY LDA #$C7 ;PRINT GO=
- JSR $FDED
- LDA #$CF
- JSR $FDED
- LDA #$BA
- JSR $FDED
- JSR HEXINPUT ;GET USER'S ADDRESS
- ASL A ;SHIFT INTO HER HI NIBBLE
- ASL A
- ASL A
- ASL A
- STA PATTERN+3 ;SET UP SEARCH PATTERN
- JSR HEXINPUT ;GET SECOND BYTE FROM USER
- ORA PATTERN+3 ;NOW DO HER LOW NIBBLE
- STA PATTERN+3
- LDA #$8D ;RETURN HER CARRIAGE
- JSR $FDED
- JSR CLEANUP ;AND CLEAN UP THE MESS YOU MADE
- JMP FINDMARK
- ;================================================== *KEY*
- TKEY LDA #$D4 ;PRINT TM=
- JSR $FDED
- LDA #$CD
- JSR $FDED
- LDA #$BA
- JSR $FDED
- JSR HEXINPUT ;ASK USER
- ASL A
- ASL A
- ASL A
- ASL A
- STA MEASLEN+1
- JSR HEXINPUT ;GET SECOND BYTE
- ORA MEASLEN+1
- STA MEASLEN+1
- JSR HEXINPUT ;AND A THIRD
- ASL A
- ASL A
- ASL A
- ASL A
- STA MEASLEN
- JSR HEXINPUT ;ONE MORE
- ORA MEASLEN
- STA MEASLEN
- JMP WHAMBAM ;GET OUTTA HERE
- ;================================================== *KEY*
- AKEY LDA #$C1 ;THIS TIME ASK HER NICELY FOR HER
- JSR $FDED ;ADDRESS
- LDA #$C4
- JSR $FDED ;PRINT AD=
- LDA #$BA
- JSR $FDED
- JSR HEXINPUT ;THEN SHE'LL GIVE YOU SOME HEX
- ASL A
- ASL A
- ASL A
- ASL A
- STA PTR+1
- JSR HEXINPUT
- ORA PTR+1
- STA PTR+1
- JSR HEXINPUT
- ASL A
- ASL A
- ASL A
- ASL A
- STA PTR
- JSR HEXINPUT
- ORA PTR
- AND #$FC ;MASK HER LOWER HALF NIBBLE
- STA PTR ;SO YOU'RE POINTING TO 1ST BYTE OF CELL
- ;
- CHN EDIT.SRC4
-