home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-07-08 | 7.3 KB | 224 lines | [04] ASCII Text (0x0000) |
- ;
- ; EDIT.SRC4
- ;
- WHAMBAM LDA #$8D
- JSR $FDED ;ONE FINAL CLEANUP AND CR
- JSR CLEANUP
- RTS ;AND WE'RE HISTORY.
- ;
- ;==================================================
- ; FROM DISPNOTE.SRC
- ;
- ; MODE 0 = NOTE OFF, 1 = NOTE ON
- CURRMODE DFB $00
- PREVMODE DFB $00
- ;
- DASH ASC "-"
- SPACE ASC " "
- VBAR ASC "|"
- ;
- SHIFT DFB $17
- ;
- PDURL DFB $00
- PDURH DFB $00
- ;==================================================
- ; REENTRANT ROUTINE
- ; DUR/NOTE/VEL ARE POPULATED UPON ENTRY
- ;
- DISPLAY JSR SETMODE
- JSR CMPMODES
- BCS PRINTIT ;ONLY PRINT IF CURRMODE<>PREVMODE
- ;
- TESTDUR LDA DURL ;OR DUR<>0
- BNE PRINTIT
- LDA DURH ;==>(DURL<>0 OR (DURL=0 AND DURH<>0))
- BEQ DONTPRNT
- PRINTIT JSR NEWLINE
- DONTPRNT LDA CURRMODE
- STA PREVMODE ;SET UP NEXT PREVMODE
- LDA DASH ;STORE DASH FOR NOTE OFFS
- LDX VEL
- CPX #$00
- BEQ STORLINE
- LDX NOTE ;STORE ASCII CHAR FOR NOT ONS
- LDA DISPMODE
- BNE DISPLCF ;DEPENDING ON WHETHER UCS OR LCF
- LDA UCS,X
- CLV
- BVC STORLINE
- DISPLCF LDA LCF,X
- STORLINE LDX NOTE
- STA LINE,X
- RTS
- ;==================================================
- SETMODE LDA #$00 ;SET MODE TO 0 FOR NOTE OFF
- STA CURRMODE ;OR 1 FOR NOTE ON
- LDA VEL
- BEQ SETMODE1
- LDA #$01
- STA CURRMODE
- SETMODE1 RTS
- ;==================================================
- CMPMODES LDA CURRMODE ;IF CURRMODE = PREVMODE, CLC
- CMP PREVMODE ;ELSE SEC
- BEQ SAME
- SEC
- RTS
- SAME CLC
- RTS
- ;
- ;==================================================
- NEWLINE LDA DURL
- STA PDURL
- LDA DURH
- STA PDURH
- LDX SHIFT
- LDY #$48
- PRNTLOOP LDA LINE,X
- JSR $FDED
- INX
- DEY
- BNE PRNTLOOP
- JSR PRNTADRS
- ;
- LDX #$7F
- LOOPLINE LDA LINE,X
- CMP DASH
- BEQ DASHFND
- CMP SPACE
- BEQ NEXTX
- LDA VBAR ;IF NOT A DASH, STORE A VBAR
- STA LINE,X
- CLV
- BVC NEXTX
- ;
- DASHFND LDA SPACE ;IF DASH, SPACE IT OUT
- STA LINE,X
- ;
- NEXTX DEX
- BPL LOOPLINE
- LDA #$00
- STA PDURL
- STA PDURH
- RTS
- ;==================================================
- CLEANUP LDX #$7F
- LDA #$A0
- SPACEALL STA LINE,X
- DEX
- BNE SPACEALL
- BEQ CR
- ;
- PRNTADRS LDA $07
- JSR $FDDA
- LDA $06
- JSR $FDDA
- LDA PDURL
- BNE PDUR
- LDA PDURH
- BNE PDUR
- ;
- CR LDA #$8D
- JMP $FDED
- ;==================================================
- PDUR LDA PDURL
- STA $50
- LDA PDURH
- STA $51
- JSR HEXDEC
- JSR PRNTDEC
- RTS
- ;==================================================
- HEXDEC LDA #$0A
- STA $53
- LDY #$04
- ;
- HEXDEC0 LDX #$10
- LDA #$00
- STA $52
- CLC
- ;
- HEXDEC1 ROL $50
- ROL $51
- ROL $52
- DEX
- BMI HEXDEC2
- LDA $52
- SEC
- SBC $53
- BCC HEXDEC1
- STA $52
- BCS HEXDEC1
- ;
- HEXDEC2 CLC
- ROR $52
- LDA $52
- ORA #$B0
- STA DEC1,Y
- DEY
- BPL HEXDEC0
- RTS
- ;==================================================
- PRNTDEC LDA DEC2
- CMP #$B0
- BNE OVER1000
- LDA #$A0
- ;
- OVER1000 JSR $FDED
- LDA DEC3
- JSR $FDED
- LDA DEC4
- JSR $FDED
- LDA DEC5
- JSR $FDED
- RTS
- ;==================================================
- DEC1 DFB $B0
- DEC2 DFB $B0
- DEC3 DFB $B0
- DEC4 DFB $B0
- DEC5 DFB $B0
- ;
- LINE DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- DFB $A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0
- ;
- UCS ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFgGaAb"
- ASC "cCdDefFg"
- ;
- LCF ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgGaAbB"
- ASC "CdDeEFgG"
- ;==================================================
- EOF BRK
-