mirror of
https://git.sr.ht/~rabbits/uxn
synced 2024-11-23 14:25:10 +00:00
Fixed leak in piano
This commit is contained in:
parent
fd9612d656
commit
4bac8e9e30
3 changed files with 25 additions and 26 deletions
2
build.sh
2
build.sh
|
@ -42,7 +42,7 @@ then
|
|||
fi
|
||||
|
||||
echo "Assembling.."
|
||||
./bin/uxnasm projects/demos/piano.usm bin/boot.rom
|
||||
./bin/uxnasm projects/demos/bifurcan.usm bin/boot.rom
|
||||
|
||||
echo "Running.."
|
||||
if [ "${2}" = '--cli' ];
|
||||
|
|
|
@ -4,10 +4,7 @@
|
|||
)
|
||||
|
||||
%RTN { JMP2r }
|
||||
%8+ { #0008 ADD2 }
|
||||
%2/ { #0002 DIV2 }
|
||||
%MOD { DUP2 DIV MUL SUB }
|
||||
%INC { #01 ADD }
|
||||
%TOS { #00 SWP }
|
||||
|
||||
( devices )
|
||||
|
@ -41,8 +38,8 @@
|
|||
;on-mouse .Mouse/vector DEO2
|
||||
|
||||
( find center )
|
||||
.Screen/width DEI2 2/ .center/x STZ2
|
||||
.Screen/height DEI2 2/ .center/y STZ2
|
||||
.Screen/width DEI2 #0002 DIV2 .center/x STZ2
|
||||
.Screen/height DEI2 #0002 DIV2 .center/y STZ2
|
||||
|
||||
( background )
|
||||
;tiles ;cover-pattern JSR2
|
||||
|
@ -66,7 +63,7 @@ BRK
|
|||
;draw-cursor JSR2
|
||||
|
||||
.Mouse/state DEI #00 EQU ,&no-touch JCN
|
||||
( incr ) .style LDZ INC #03 MOD .style STZ
|
||||
( incr ) .style LDZ #01 ADD #04 MOD .style STZ
|
||||
( bg ) ;tiles .style LDZ #10 MUL TOS ADD2 ;cover-pattern JSR2
|
||||
( fg ) ;redraw JSR2
|
||||
( release ) #00 .Mouse/state DEO
|
||||
|
@ -102,7 +99,7 @@ BRK
|
|||
|
||||
RTN
|
||||
|
||||
@draw-number ( x y n -- )
|
||||
@draw-number ( x* y* n -- )
|
||||
|
||||
STH
|
||||
( save pos ) .anchor/y STZ2 .anchor/x STZ2
|
||||
|
@ -116,14 +113,14 @@ RTN
|
|||
( set style ) .style LDZ #10 MUL TOS ADD2
|
||||
.Screen/addr DEO2
|
||||
( draw ) #21 .Screen/color DEO
|
||||
( incr ) SWP INC SWP
|
||||
( incr ) SWP #01 ADD SWP
|
||||
DUP2 LTH ,&loop JCN
|
||||
POP2
|
||||
POPr
|
||||
|
||||
RTN
|
||||
|
||||
@cover-pattern ( addr -- )
|
||||
@cover-pattern ( addr* -- )
|
||||
|
||||
( load ) .Screen/addr DEO2
|
||||
#0000 .Screen/height DEI2
|
||||
|
@ -133,11 +130,11 @@ RTN
|
|||
&hor
|
||||
( save ) OVR2 .Screen/x DEO2
|
||||
( draw ) #21 .Screen/color DEO
|
||||
( incr ) SWP2 8+ SWP2
|
||||
OVR2 OVR2 LTH2 ,&hor JCN
|
||||
( incr ) SWP2 #0008 ADD2 SWP2
|
||||
LTH2k ,&hor JCN
|
||||
POP2 POP2
|
||||
( incr ) SWP2 8+ SWP2
|
||||
OVR2 OVR2 LTH2 ,&ver JCN
|
||||
( incr ) SWP2 #0008 ADD2 SWP2
|
||||
LTH2k ,&ver JCN
|
||||
POP2 POP2
|
||||
|
||||
RTN
|
||||
|
@ -174,4 +171,6 @@ RTN
|
|||
0718 2040 4080 8080
|
||||
0101 0102 0204 18e0
|
||||
0808 0810 e304 0808
|
||||
0808 0804 e310 0808 ]
|
||||
0808 0804 e310 0808
|
||||
0000 0000 0000 0001
|
||||
ffff ffff ffff ffff ]
|
||||
|
|
|
@ -5,11 +5,12 @@
|
|||
%++ { ADD2 } %-- { SUB2 } %** { MUL2 } %// { DIV2 }
|
||||
%<< { LTH2 } %>> { GTH2 } %== { EQU2 } %!! { NEQ2 }
|
||||
|
||||
%RTN { JMP2r }
|
||||
%TOS { #00 SWP }
|
||||
%MOD { DUP2 / * - }
|
||||
%LTS2 { #8000 ++ SWP2 #8000 ++ >> }
|
||||
%GTS2 { #8000 ++ SWP2 #8000 ++ << }
|
||||
%RTN { JMP2r }
|
||||
%TOS { #00 SWP }
|
||||
%MOD { DUP2 / * - }
|
||||
%LTS2 { #8000 ++ SWP2 #8000 ++ >> }
|
||||
%GTS2 { #8000 ++ SWP2 #8000 ++ << }
|
||||
%INCR { SWP #01 + SWP }
|
||||
|
||||
%WAVEFORM { #1000 }
|
||||
|
||||
|
@ -107,7 +108,7 @@ BRK
|
|||
.adsr-view/x2 LDZ2 #003a -- #0002 ++ .Screen/x DEO2
|
||||
OVR #10 SWP - .Audio0/output DEI #04 SFT < .Screen/color DEO
|
||||
.Screen/y DEI2 #0002 ++ .Screen/y DEO2
|
||||
( incr ) SWP #01 + SWP
|
||||
( incr ) INCR
|
||||
LTHk ,&loop JCN
|
||||
POP2
|
||||
|
||||
|
@ -116,7 +117,6 @@ BRK
|
|||
@on-control ( -> )
|
||||
|
||||
( clear last cursor )
|
||||
#fff8 .Screen/addr DEO2
|
||||
.pointer/x LDZ2 .Screen/x DEO2
|
||||
.pointer/y LDZ2 .Screen/y DEO2
|
||||
#30 .Screen/color DEO
|
||||
|
@ -252,7 +252,7 @@ BRK
|
|||
|
||||
@play ( pitch -- )
|
||||
|
||||
DUP .octave LDZ #0c * + .Audio0/pitch DEO
|
||||
.octave LDZ #0c * + .Audio0/pitch DEO
|
||||
|
||||
RTN
|
||||
|
||||
|
@ -313,7 +313,7 @@ RTN
|
|||
( draw ) STHrk .Screen/color DEO
|
||||
( incr ) .Screen/addr DEI2 #0008 ++ .Screen/addr DEO2
|
||||
( incr ) SWP2 #0008 ++ SWP2
|
||||
OVR2 OVR2 << ,&loop JCN
|
||||
LTH2k ,&loop JCN
|
||||
POP2 POP2
|
||||
POPr
|
||||
|
||||
|
@ -370,7 +370,7 @@ RTN
|
|||
TOS #0004 // .wave-view/y1 LDZ2 ++ .Screen/y DEO2
|
||||
.Screen/x DEI2 #0001 ++ .Screen/x DEO2
|
||||
( draw ) OVR .Audio0/length DEI2 SWP POP > #02 * #01 + .Screen/color DEO
|
||||
( incr ) SWP #01 + SWP
|
||||
( incr ) INCR
|
||||
LTHk ,&loop JCN
|
||||
POP2
|
||||
|
||||
|
@ -392,7 +392,7 @@ RTN
|
|||
OVR2 .Screen/y DEO2
|
||||
( draw ) STHrk .Screen/color DEO
|
||||
( incr ) SWP2 #0001 ++ SWP2
|
||||
OVR2 OVR2 << ,&loop JCN
|
||||
LTH2k ,&loop JCN
|
||||
POP2 POP2
|
||||
POPr
|
||||
|
||||
|
|
Loading…
Reference in a new issue