mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-01 05:31:52 +00:00
25950bddee
saved 100 bytes, didn't really improve speed at all (at least if you take into account table gen at the beginning)
240 lines
5.4 KiB
ArmAsm
240 lines
5.4 KiB
ArmAsm
; PT3 Table generation test
|
|
|
|
; for debug purposes prints the raw values to screen
|
|
; we re-route this to the printer in Slot #1 for debugging
|
|
|
|
.include "zp.inc"
|
|
|
|
PT3_LOC = $4000
|
|
|
|
;=============================
|
|
; Setup
|
|
;=============================
|
|
pt3_setup:
|
|
jsr HOME
|
|
jsr TEXT
|
|
|
|
|
|
; init variables
|
|
|
|
lda #0
|
|
sta DRAW_PAGE
|
|
sta DONE_PLAYING
|
|
sta WHICH_FILE
|
|
|
|
;============================
|
|
; Conduct tests
|
|
;============================
|
|
|
|
|
|
;================================
|
|
; Test 3.5 table
|
|
;================================
|
|
|
|
|
|
sec ; 1 = 3.5 Table
|
|
jsr VolTableCreator
|
|
|
|
ldy #0
|
|
print_loop_1:
|
|
tya
|
|
and #$f
|
|
bne print_loop_1_no_cr
|
|
jsr CROUT
|
|
print_loop_1_no_cr:
|
|
|
|
lda VolumeTable,Y
|
|
jsr PRHEX
|
|
lda #' '+$80
|
|
jsr COUT
|
|
|
|
iny
|
|
bne print_loop_1
|
|
|
|
ldy #0
|
|
test_loop1:
|
|
lda VolumeTable,Y
|
|
cmp Test_PT3VolumeTable_35,Y
|
|
bne error
|
|
iny
|
|
bne test_loop1
|
|
|
|
jsr CROUT
|
|
|
|
lda #'G'-'@'
|
|
jsr COUT
|
|
jsr CROUT
|
|
jsr CROUT
|
|
|
|
|
|
;================================
|
|
; Test 3.4 table
|
|
;================================
|
|
|
|
|
|
clc ; 0 = 3.4 Table
|
|
jsr VolTableCreator
|
|
|
|
ldy #0
|
|
print_loop_2:
|
|
tya
|
|
and #$f
|
|
bne print_loop_2_no_cr
|
|
jsr CROUT
|
|
print_loop_2_no_cr:
|
|
|
|
lda VolumeTable,Y
|
|
jsr PRHEX
|
|
lda #' '+$80
|
|
jsr COUT
|
|
|
|
iny
|
|
bne print_loop_2
|
|
|
|
ldy #0
|
|
test_loop2:
|
|
lda VolumeTable,Y
|
|
cmp Test_PT3VolumeTable_33_34,Y
|
|
bne error
|
|
iny
|
|
bne test_loop2
|
|
|
|
jsr CROUT
|
|
lda #'G'-'@'
|
|
jsr COUT
|
|
jsr CROUT
|
|
jsr CROUT
|
|
|
|
|
|
|
|
|
|
|
|
;============================
|
|
; Loop forever
|
|
;============================
|
|
main_loop:
|
|
jmp main_loop
|
|
|
|
;============================
|
|
; Error
|
|
;============================
|
|
error:
|
|
jsr CROUT
|
|
tya
|
|
jsr PRBYTE
|
|
|
|
lda #' '+$80
|
|
jsr COUT
|
|
|
|
lda #'E'
|
|
jsr COUT
|
|
jsr CROUT
|
|
jmp main_loop
|
|
|
|
;=========
|
|
;routines
|
|
;=========
|
|
|
|
.include "pt3_lib.s"
|
|
|
|
|
|
|
|
|
|
; Table #1 of Pro Tracker 3.3x - 3.5x
|
|
Test_PT3NoteTable_ST_high:
|
|
.byte $0E,$0E,$0D,$0C,$0B,$0B,$0A,$09
|
|
.byte $09,$08,$08,$07,$07,$07,$06,$06
|
|
.byte $05,$05,$05,$04,$04,$04,$04,$03
|
|
.byte $03,$03,$03,$03,$02,$02,$02,$02
|
|
.byte $02,$02,$02,$01,$01,$01,$01,$01
|
|
.byte $01,$01,$01,$01,$01,$01,$01,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
|
|
Test_PT3NoteTable_ST_low:
|
|
.byte $F8,$10,$60,$80,$D8,$28,$88,$F0
|
|
.byte $60,$E0,$58,$E0,$7C,$08,$B0,$40
|
|
.byte $EC,$94,$44,$F8,$B0,$70,$2C,$FD
|
|
.byte $BE,$84,$58,$20,$F6,$CA,$A2,$7C
|
|
.byte $58,$38,$16,$F8,$DF,$C2,$AC,$90
|
|
.byte $7B,$65,$51,$3E,$2C,$1C,$0A,$FC
|
|
.byte $EF,$E1,$D6,$C8,$BD,$B2,$A8,$9F
|
|
.byte $96,$8E,$85,$7E,$77,$70,$6B,$64
|
|
.byte $5E,$59,$54,$4F,$4B,$47,$42,$3F
|
|
.byte $3B,$38,$35,$32,$2F,$2C,$2A,$27
|
|
.byte $25,$23,$21,$1F,$1D,$1C,$1A,$19
|
|
.byte $17,$16,$15,$13,$12,$11,$10,$0F
|
|
|
|
|
|
; Table #2 of Pro Tracker 3.4x - 3.5x
|
|
Test_PT3NoteTable_ASM_34_35_high:
|
|
.byte $0D,$0C,$0B,$0A,$0A,$09,$09,$08
|
|
.byte $08,$07,$07,$06,$06,$06,$05,$05
|
|
.byte $05,$04,$04,$04,$04,$03,$03,$03
|
|
.byte $03,$03,$02,$02,$02,$02,$02,$02
|
|
.byte $02,$01,$01,$01,$01,$01,$01,$01
|
|
.byte $01,$01,$01,$01,$01,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
|
|
Test_PT3NoteTable_ASM_34_35_low:
|
|
.byte $10,$55,$A4,$FC,$5F,$CA,$3D,$B8
|
|
.byte $3B,$C5,$55,$EC,$88,$2A,$D2,$7E
|
|
.byte $2F,$E5,$9E,$5C,$1D,$E2,$AB,$76
|
|
.byte $44,$15,$E9,$BF,$98,$72,$4F,$2E
|
|
.byte $0F,$F1,$D5,$BB,$A2,$8B,$74,$60
|
|
.byte $4C,$39,$28,$17,$07,$F9,$EB,$DD
|
|
.byte $D1,$C5,$BA,$B0,$A6,$9D,$94,$8C
|
|
.byte $84,$7C,$75,$6F,$69,$63,$5D,$58
|
|
.byte $53,$4E,$4A,$46,$42,$3E,$3B,$37
|
|
.byte $34,$31,$2F,$2C,$29,$27,$25,$23
|
|
.byte $21,$1F,$1D,$1C,$1A,$19,$17,$16
|
|
.byte $15,$14,$12,$11,$10,$0F,$0E,$0D
|
|
|
|
|
|
Test_PT3VolumeTable_33_34:
|
|
.byte $0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
|
|
.byte $0,$0,$0,$0,$0,$0,$0,$0,$1,$1,$1,$1,$1,$1,$1,$1
|
|
.byte $0,$0,$0,$0,$0,$0,$1,$1,$1,$1,$1,$2,$2,$2,$2,$2
|
|
.byte $0,$0,$0,$0,$1,$1,$1,$1,$2,$2,$2,$2,$3,$3,$3,$3
|
|
.byte $0,$0,$0,$0,$1,$1,$1,$2,$2,$2,$3,$3,$3,$4,$4,$4
|
|
.byte $0,$0,$0,$1,$1,$1,$2,$2,$3,$3,$3,$4,$4,$4,$5,$5
|
|
.byte $0,$0,$0,$1,$1,$2,$2,$3,$3,$3,$4,$4,$5,$5,$6,$6
|
|
.byte $0,$0,$1,$1,$2,$2,$3,$3,$4,$4,$5,$5,$6,$6,$7,$7
|
|
.byte $0,$0,$1,$1,$2,$2,$3,$3,$4,$5,$5,$6,$6,$7,$7,$8
|
|
.byte $0,$0,$1,$1,$2,$3,$3,$4,$5,$5,$6,$6,$7,$8,$8,$9
|
|
.byte $0,$0,$1,$2,$2,$3,$4,$4,$5,$6,$6,$7,$8,$8,$9,$A
|
|
.byte $0,$0,$1,$2,$3,$3,$4,$5,$6,$6,$7,$8,$9,$9,$A,$B
|
|
.byte $0,$0,$1,$2,$3,$4,$4,$5,$6,$7,$8,$8,$9,$A,$B,$C
|
|
.byte $0,$0,$1,$2,$3,$4,$5,$6,$7,$7,$8,$9,$A,$B,$C,$D
|
|
.byte $0,$0,$1,$2,$3,$4,$5,$6,$7,$8,$9,$A,$B,$C,$D,$E
|
|
.byte $0,$1,$2,$3,$4,$5,$6,$7,$8,$9,$A,$B,$C,$D,$E,$F
|
|
|
|
|
|
Test_PT3VolumeTable_35:
|
|
.byte $0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
|
|
.byte $0,$0,$0,$0,$0,$0,$0,$0,$1,$1,$1,$1,$1,$1,$1,$1
|
|
.byte $0,$0,$0,$0,$1,$1,$1,$1,$1,$1,$1,$1,$2,$2,$2,$2
|
|
.byte $0,$0,$0,$1,$1,$1,$1,$1,$2,$2,$2,$2,$2,$3,$3,$3
|
|
.byte $0,$0,$1,$1,$1,$1,$2,$2,$2,$2,$3,$3,$3,$3,$4,$4
|
|
.byte $0,$0,$1,$1,$1,$2,$2,$2,$3,$3,$3,$4,$4,$4,$5,$5
|
|
.byte $0,$0,$1,$1,$2,$2,$2,$3,$3,$4,$4,$4,$5,$5,$6,$6
|
|
.byte $0,$0,$1,$1,$2,$2,$3,$3,$4,$4,$5,$5,$6,$6,$7,$7
|
|
.byte $0,$1,$1,$2,$2,$3,$3,$4,$4,$5,$5,$6,$6,$7,$7,$8
|
|
.byte $0,$1,$1,$2,$2,$3,$4,$4,$5,$5,$6,$7,$7,$8,$8,$9
|
|
.byte $0,$1,$1,$2,$3,$3,$4,$5,$5,$6,$7,$7,$8,$9,$9,$A
|
|
.byte $0,$1,$1,$2,$3,$4,$4,$5,$6,$7,$7,$8,$9,$A,$A,$B
|
|
.byte $0,$1,$2,$2,$3,$4,$5,$6,$6,$7,$8,$9,$A,$A,$B,$C
|
|
.byte $0,$1,$2,$3,$3,$4,$5,$6,$7,$8,$9,$A,$A,$B,$C,$D
|
|
.byte $0,$1,$2,$3,$4,$5,$6,$7,$7,$8,$9,$A,$B,$C,$D,$E
|
|
.byte $0,$1,$2,$3,$4,$5,$6,$7,$8,$9,$A,$B,$C,$D,$E,$F
|
|
|