mirror of
https://github.com/erangell/A2NoSlotMIDI.git
synced 2024-06-06 12:29:30 +00:00
99 lines
2.5 KiB
Plaintext
99 lines
2.5 KiB
Plaintext
|
; MFF0DRVR.SC6
|
||
|
;
|
||
|
; CALL THIS IMMEDIATELY AFTER CALLING TEMPOCHG
|
||
|
;
|
||
|
METRONOM LDA #$03 ;DIVIDEND=60MEG SECONDS
|
||
|
STA DIVIDEND
|
||
|
LDA #$20
|
||
|
STA DIVIDEND+1
|
||
|
LDA #$00
|
||
|
STA DIVIDEND+2
|
||
|
STA DIVIDEND+3
|
||
|
LDA QUOTIENT+2 ;DIVISOR = PREVIOUS QUOTIENT
|
||
|
STA DIVISOR
|
||
|
LDA QUOTIENT+3
|
||
|
STA DIVISOR+1
|
||
|
JSR DIVISION
|
||
|
LDA QUOTIENT ;DIVIDEND=PREV QUOTIENT
|
||
|
STA DIVIDEND
|
||
|
LDA QUOTIENT+1
|
||
|
STA DIVIDEND+1
|
||
|
LDA QUOTIENT+2
|
||
|
STA DIVIDEND+2
|
||
|
LDA QUOTIENT+3
|
||
|
STA DIVIDEND+3
|
||
|
LDA RESHI ;DIVISOR=RESOLUTION
|
||
|
STA DIVISOR
|
||
|
LDA RESLO
|
||
|
STA DIVISOR+1
|
||
|
JSR DIVISION
|
||
|
LDA QUOTIENT+3
|
||
|
STA $50
|
||
|
LDA QUOTIENT+2
|
||
|
STA $51
|
||
|
JSR HEXDEC
|
||
|
LDA DEC3
|
||
|
STA METRTMP1
|
||
|
LDA DEC4
|
||
|
STA METRTMP2
|
||
|
LDA DEC5
|
||
|
STA METRTMP3
|
||
|
RTS
|
||
|
SPEEDDEC LDA SPEED
|
||
|
STA $50
|
||
|
LDA #$00
|
||
|
STA $51
|
||
|
JSR HEXDEC
|
||
|
LDA DEC3
|
||
|
STA METRSPD1
|
||
|
LDA DEC4
|
||
|
STA METRSPD2
|
||
|
LDA DEC5
|
||
|
STA METRSPD3
|
||
|
RTS
|
||
|
METRPOKE LDY #23
|
||
|
LDX #0
|
||
|
METRPLOO LDA METRDISP,X
|
||
|
JSR POKE80
|
||
|
INX
|
||
|
CPX #11
|
||
|
BCC METRPLOO
|
||
|
RTS
|
||
|
;========================================================
|
||
|
; CONVERTS HEX IN ($50,$51) TO DECIMAL
|
||
|
; FROM APPLE PROGRAMMERS HANDBOOK P. 225
|
||
|
;========================================================
|
||
|
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
|
||
|
DEC1 DFB $B0
|
||
|
DEC2 DFB $B0
|
||
|
DEC3 DFB $B0
|
||
|
DEC4 DFB $B0
|
||
|
DEC5 DFB $B0
|
||
|
;
|
||
|
CHN MFF0DRVR.SC7
|