ref: ddc88bed4bab836b04ae11f0404baa03d001d3df
parent: 2a2b5d7f23fc4b0beda9ae9ab084d145c7690953
author: yenatch <[email protected]>
date: Mon May 5 11:58:43 EDT 2014
Use a macro for sine waves. So far they're identical, but amplitude could change.
--- a/macros.asm
+++ b/macros.asm
@@ -191,3 +191,14 @@
ENDM
+sine_wave: MACRO
+; \1: amplitude
+
+x = 0
+ rept $20
+ ; Round up.
+ dw (sin(x) + (sin(x) & $ff)) >> 8
+x = x + \1 * $40000
+ endr
+ENDM
+
--- a/main.asm
+++ b/main.asm
@@ -7722,11 +7722,7 @@
SineWave: ; 850b
; A $20-word table representing a sine wave.
; 90 degrees is index $10 at a base amplitude of $100.
-x set 0
- rept $20
- dw (sin(x) + (sin(x) & $ff)) >> 8 ; round up
-x set x + $100 * $40000
- endr
+ sine_wave $100
; 854b
@@ -52516,12 +52512,7 @@
; 49b6e (12:5b6e)
Unknown_49b6e: ; 49b6e
-; Yet another sine wave.
-x set 0
- rept $20
- dw (sin(x) + (sin(x) & $ff)) >> 8 ; round up
-x set x + $100 * $40000
- endr
+ sine_wave $100
; 49bae
Function49bae: ; 49bae
@@ -75538,12 +75529,7 @@
; 8c728 (23:4728)
Unknown_8c728: ; 8c728
-; Another sine wave?
-x set 0
- rept $20
- dw (sin(x) + (sin(x) & $ff)) >> 8 ; round up
-x set x + $100 * $40000
- endr
+ sine_wave $100
; 8c768
; no known jump sources
@@ -79367,12 +79353,7 @@
; 8e75d
Unknown_8e75d: ; 8e75d
-; A sine wave.
-x set 0
- rept $20
- dw (sin(x) + (sin(x) & $ff)) >> 8 ; round up
-x set x + $100 * $40000
- endr
+ sine_wave $100
Function8e79d: ; 8e79d