From d4981f4779b16e75489c36ab10b8ab6d27445c4f Mon Sep 17 00:00:00 2001 From: neauoire Date: Sun, 25 Apr 2021 14:00:35 -0700 Subject: [PATCH] Mini cleanup --- projects/demos/piano.usm | 53 ++++++++-------------------------------- 1 file changed, 10 insertions(+), 43 deletions(-) diff --git a/projects/demos/piano.usm b/projects/demos/piano.usm index 8a65315..1f9743b 100644 --- a/projects/demos/piano.usm +++ b/projects/demos/piano.usm @@ -1,13 +1,11 @@ ( piano ) %RTN { JMP2r } -%8+ { #0008 ADD2 } %8- { #0008 SUB2 } -%8* { #0008 MUL2 } %8/ { #0008 DIV2 } +%8+ { #0008 ADD2 } +%8/ { #0008 DIV2 } %2/ { #0002 DIV2 } %++ { #0001 ADD2 } -%MOD { DUP2 DIV MUL SUB } %TOS { #00 SWP } -%PRINT-SHORT { .Console/short DEO2 #0d .Console/char DEO } ( devices ) @@ -30,7 +28,6 @@ @pointer [ &x $2 &y $2 ] @color $1 -@rect [ &x1 $2 &y1 $2 &x2 $2 &y2 $2 ] @adsr-view [ &x1 $2 &y1 $2 &x2 $2 &y2 $2 ] @wave-view [ &x1 $2 &y1 $2 &x2 $2 &y2 $2 ] @@ -81,9 +78,10 @@ ;sine-wave .Audio/addr DEO2 ;sine-wave/end ;sine-wave SUB2 #0001 SFT2 .Audio/length DEO2 - - ( background ) - ;redraw JSR2 + ( inital drawing ) + ;draw-octave JSR2 + ;draw-adsr JSR2 + ;draw-wave JSR2 BRK @@ -123,11 +121,9 @@ BRK .Mouse/x DEI2 .octave-view/x1 PEK2 SUB2 #0008 DIV2 SWP POP #08 NEQ ,&no-mod JNZ .Mouse/y DEI2 .octave-view/y1 PEK2 SUB2 #0008 DIV2 SWP POP DUP #00 NEQ ,&no-incr JNZ - .octave PEK #01 ADD .octave POK - &no-incr + .octave PEK #01 ADD .octave POK &no-incr DUP #02 NEQ ,&no-decr JNZ - .octave PEK #01 SUB .octave POK - &no-decr + .octave PEK #01 SUB .octave POK &no-decr POP ( release ) #00 .Mouse/state DEO ;draw-octave JSR2 @@ -161,6 +157,7 @@ BRK DUP #f0 AND STH #01 .Mouse/state DEI #10 EQU #0e MUL ADD ADD #0f AND STHr ADD .Audio/adsr #01 ADD DEO &no-r POP + ( release ) #00 .Mouse/state DEO ;draw-adsr JSR2 ;draw-cursor JSR2 @@ -205,7 +202,7 @@ BRK ( move ) .Audio/addr DEI2 #0001 ADD2 .Audio/addr DEO2 &no-right POP - ;redraw JSR2 + ;draw-octave JSR2 BRK @@ -215,14 +212,6 @@ BRK RTN -@redraw ( -- ) - - ;draw-octave JSR2 - ;draw-adsr JSR2 - ;draw-wave JSR2 - -RTN - @draw-cursor ( -- ) ( clear last cursor ) @@ -413,28 +402,6 @@ RTN RTN -@line-rect ( x1 y1 x2 y2 color -- ) - - ( load ) .color POK DUP2 STH2 .rect/y2 POK2 .rect/x2 POK2 DUP2 STH2 .rect/y1 POK2 .rect/x1 POK2 - STH2r STH2r - &ver - ( save ) OVR2 .Screen/y DEO2 - ( draw ) .rect/x1 PEK2 .Screen/x DEO2 .color PEK DUP .Screen/color DEO - ( draw ) .rect/x2 PEK2 .Screen/x DEO2 .Screen/color DEO - ( incr ) SWP2 ++ SWP2 - OVR2 OVR2 LTS2 ,&ver JNZ - POP2 POP2 - .rect/x1 PEK2 .rect/x2 PEK2 - &hor - ( save ) OVR2 .Screen/x DEO2 - ( draw ) .rect/y1 PEK2 .Screen/y DEO2 .color PEK DUP .Screen/color DEO - ( draw ) .rect/y2 PEK2 .Screen/y DEO2 .Screen/color DEO - ( incr ) SWP2 ++ SWP2 - OVR2 OVR2 ++ LTS2 ,&hor JNZ - POP2 POP2 - -RTN - @clear [ 0000 0000 0000 0000 ]