From f86adf4d579705604942a183ca043df5de9e17ac Mon Sep 17 00:00:00 2001 From: Devine Lu Linvega Date: Wed, 22 Feb 2023 20:40:37 -0800 Subject: [PATCH] Piano room steps --- etc/tools/composer.tal | 22 +++++++++++++++++----- src/oquonie.tal | 6 ++++++ 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/etc/tools/composer.tal b/etc/tools/composer.tal index efc2d61..54e0675 100644 --- a/etc/tools/composer.tal +++ b/etc/tools/composer.tal @@ -26,19 +26,20 @@ #0180 .Screen/height DEO2 ;on-mouse .Mouse/vector DEO2 + ;on-control .Controller/vector DEO2 ;on-frame .Screen/vector DEO2 - #142a .Audio0/adsr DEO2 + #0111 .Audio0/adsr DEO2 #ed .Audio0/volume DEO ;sin-pcm .Audio0/addr DEO2 #0100 .Audio0/length DEO2 - #133d .Audio1/adsr DEO2 + #0111 .Audio1/adsr DEO2 #de .Audio1/volume DEO ;sin-pcm .Audio1/addr DEO2 #0100 .Audio1/length DEO2 - #12ed .Audio2/adsr DEO2 + #0111 .Audio2/adsr DEO2 #cc .Audio2/volume DEO ;sin-pcm .Audio2/addr DEO2 #0100 .Audio2/length DEO2 @@ -50,7 +51,7 @@ BRK @on-frame ( -> ) [ LIT &f $1 ] INCk ,&f STR - DUP #08 DIVk MUL SUB #00 NEQ ?&skip + DUP #0a DIVk MUL SUB #00 NEQ ?&skip [ LIT &b $1 ] INCk ,&b STR #3f AND play-bar &skip @@ -58,6 +59,16 @@ BRK BRK +@on-control ( -> ) + + .Controller/key DEI + DUP ( esc ) #1b NEQ ?&no-esc + #0000 ;on-frame/f STA ;on-frame/b STA + &no-esc + POP + +BRK + @on-mouse ( -> ) ( clear last cursor ) @@ -90,13 +101,14 @@ BRK DUP mod-c .song/c STZ DUP get-a #00 SWP ;notes-lut ADD2 LDA send DUP get-b #00 SWP ;notes-lut ADD2 LDA send - ( DUP get-c send ) draw-song JMP2r @send ( pitch -- ) +!play-note + DUP #00 EQU ?&skip #00 .Console/write DEO DUP #30 ADD .Console/write DEO diff --git a/src/oquonie.tal b/src/oquonie.tal index e24a25a..83bbbf3 100644 --- a/src/oquonie.tal +++ b/src/oquonie.tal @@ -874,6 +874,12 @@ JMP2r @e/note =e/blank/draw =&collide =e/blank/load &collide ( e* -- ) + + fx/repair + ( id ) LDAk #00 SWP + ( key ) DUP2 ADD2 ;explode-lut ADD2 + ( value ) LDA2k #0004 ADD2 SWP2 STA2 + DUP2 #0003 ADD2 LDA play-piano LDA !try-move/walk