@@ -459,35 +459,22 @@ ENDM |
| 459 |
;;;;;;; |
459 |
;;;;;;; |
| 460 |
|
460 |
|
| 461 |
_playnote1: |
461 |
_playnote1: |
| 462 |
;; Call with: |
462 |
;; Play a note on channel 1 (square wave) |
| 463 |
;; Note value in H and L |
|
|
| 464 |
|
|
|
| 465 |
;; Free: A, D, E, B, C |
|
|
| 466 |
|
|
|
| 467 |
;; Play a note on channel 1 (square wave) |
|
|
| 468 |
; ld a, %11110000 |
|
|
| 469 |
; ld [rAUD1ENV], a |
|
|
| 470 |
|
|
|
| 471 |
ld a, %01111111 |
463 |
ld a, %01111111 |
| 472 |
ld [rAUD1LEN], a |
464 |
ld [rAUD1LEN], a |
| 473 |
|
465 |
|
| 474 |
ld a, l ; [temp_note_value+1] |
466 |
ld a, [temp_note_value+1] |
| 475 |
ld [channel_period1], a |
467 |
ld [channel_period1], a |
| 476 |
ld [rAUD1LOW], a |
468 |
ld [rAUD1LOW], a |
| 477 |
|
469 |
|
| 478 |
ld a, h ; [temp_note_value] |
470 |
ld a, [temp_note_value] |
| 479 |
ld [channel_period1+1], a |
471 |
ld [channel_period1+1], a |
| 480 |
|
|
|
| 481 |
or %10000000 |
472 |
or %10000000 |
| 482 |
ld [rAUD1HIGH], a |
473 |
ld [rAUD1HIGH], a |
| 483 |
|
474 |
|
| 484 |
ret |
475 |
ret |
| 485 |
|
476 |
|
| 486 |
_playnote2: |
477 |
_playnote2: |
| 487 |
;; Call with: |
|
|
| 488 |
;; Note value in H and L |
|
|
| 489 |
;; instrument + effect code in B |
|
|
| 490 |
|
|
|
| 491 |
;; Play a note on channel 2 (square wave) |
478 |
;; Play a note on channel 2 (square wave) |
| 492 |
; ld a, %11110000 |
479 |
; ld a, %11110000 |
| 493 |
; ld [rAUD2ENV], a |
480 |
; ld [rAUD2ENV], a |
@@ -495,11 +482,11 @@ _playnote2: |
| 495 |
ld a, %01111111 ; $10 |
482 |
ld a, %01111111 ; $10 |
| 496 |
ld [rAUD2LEN], a |
483 |
ld [rAUD2LEN], a |
| 497 |
|
484 |
|
| 498 |
ld a, l ; [temp_note_value+1] |
485 |
ld a, [temp_note_value+1] |
| 499 |
ld [channel_period2], a |
486 |
ld [channel_period2], a |
| 500 |
ld [rAUD2LOW], a |
487 |
ld [rAUD2LOW], a |
| 501 |
|
488 |
|
| 502 |
ld a, h ; [temp_note_value] |
489 |
ld a, [temp_note_value] |
| 503 |
ld [channel_period2+1], a |
490 |
ld [channel_period2+1], a |
| 504 |
|
491 |
|
| 505 |
or %10000000 |
492 |
or %10000000 |
@@ -508,16 +495,12 @@ _playnote2: |
| 508 |
ret |
495 |
ret |
| 509 |
|
496 |
|
| 510 |
_playnote3: |
497 |
_playnote3: |
| 511 |
;; Call with: |
|
|
| 512 |
;; Note value in H and L |
|
|
| 513 |
;; instrument + effect code in B |
|
|
| 514 |
|
|
|
| 515 |
;; Play a note on channel 3 (waveform) |
498 |
;; Play a note on channel 3 (waveform) |
| 516 |
ld a, l ; [temp_note_value+1] |
499 |
ld a, [temp_note_value+1] |
| 517 |
ld [channel_period3], a |
500 |
ld [channel_period3], a |
| 518 |
ld [rAUD3LOW], a |
501 |
ld [rAUD3LOW], a |
| 519 |
|
502 |
|
| 520 |
ld a, h ; [temp_note_value] |
503 |
ld a, [temp_note_value] |
| 521 |
ld [channel_period3+1], a |
504 |
ld [channel_period3+1], a |
| 522 |
|
505 |
|
| 523 |
or %10000000 |
506 |
or %10000000 |
@@ -663,9 +646,10 @@ set_chn_2_vol: |
| 663 |
|
646 |
|
| 664 |
ret |
647 |
ret |
| 665 |
set_chn_1_vol: |
648 |
set_chn_1_vol: |
| 666 |
ld a, d |
649 |
; ld a, d |
| 667 |
and %00001111 |
650 |
; and %00001111 |
| 668 |
or c |
651 |
; or c |
|
|
652 |
ld a, c |
| 669 |
ld [rAUD1ENV], a |
653 |
ld [rAUD1ENV], a |
| 670 |
|
654 |
|
| 671 |
ret |
655 |
ret |
@@ -830,7 +814,7 @@ fx_toneporta: |
| 830 |
.return_skip: |
814 |
.return_skip: |
| 831 |
pop hl |
815 |
pop hl |
| 832 |
pop af |
816 |
pop af |
| 833 |
ld a, 14 |
817 |
ld a, 6 |
| 834 |
add_a_to_hl |
818 |
add_a_to_hl |
| 835 |
jp hl |
819 |
jp hl |
| 836 |
|
820 |
|
@@ -950,15 +934,9 @@ _dosound: |
| 950 |
|
934 |
|
| 951 |
jr nc, .after_note1 |
935 |
jr nc, .after_note1 |
| 952 |
|
936 |
|
| 953 |
ld a, [temp_note_value] |
|
|
| 954 |
ld h, a |
|
|
| 955 |
ld a, [temp_note_value+1] |
|
|
| 956 |
ld l, a |
|
|
| 957 |
|
|
|
| 958 |
call _playnote1 ; 3 bytes |
937 |
call _playnote1 ; 3 bytes |
| 959 |
|
938 |
|
| 960 |
.after_note1: |
939 |
.after_note1: |
| 961 |
;; remove this |
|
|
| 962 |
ld a, %11110000 |
940 |
ld a, %11110000 |
| 963 |
ld [rAUD2ENV], a |
941 |
ld [rAUD2ENV], a |
| 964 |
|
942 |
|
@@ -980,11 +958,6 @@ _dosound: |
| 980 |
|
958 |
|
| 981 |
jr nc, .after_note2 |
959 |
jr nc, .after_note2 |
| 982 |
|
960 |
|
| 983 |
ld a, [temp_note_value] |
|
|
| 984 |
ld h, a |
|
|
| 985 |
ld a, [temp_note_value+1] |
|
|
| 986 |
ld l, a |
|
|
| 987 |
|
|
|
| 988 |
call _playnote2 ; 3 bytes |
961 |
call _playnote2 ; 3 bytes |
| 989 |
|
962 |
|
| 990 |
|
963 |
|