uxn

Varvara Ordinator, written in ANSI C(SDL2)
git clone https://git.eamoncaddigan.net/uxn.git
Log | Files | Refs | README | LICENSE

commit 5e7b8a9292634ea8e6eacc2823c023e7c84301f2
parent 43f91cecd95ff877685aa2822416249f5406f8e6
Author: neauoire <aliceffekt@gmail.com>
Date:   Tue, 21 Sep 2021 16:37:19 -0700

Added theme support for the calculator

Diffstat:
Mprojects/software/calc.tal | 79+++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------
1 file changed, 51 insertions(+), 28 deletions(-)

diff --git a/projects/software/calc.tal b/projects/software/calc.tal @@ -73,8 +73,8 @@ ;on-button .Controller/vector DEO2 ( setup synth ) - #0208 .Audio0/adsr DEO2 - ;saw-wav .Audio0/addr DEO2 + #0110 .Audio0/adsr DEO2 + ;sin-pcm .Audio0/addr DEO2 #0100 .Audio0/length DEO2 #dd .Audio0/volume DEO ( TODO: turn ON ) @@ -103,7 +103,8 @@ DUP2 .input-frame/y STZ2 #0010 ++ .input-frame/y2 STZ2 - ;redraw JSR2 + ( theme support ) + ;load-theme JSR2 BRK @@ -214,7 +215,7 @@ BRK @push-input ( key -- ) - DUP TOS ;keypad/notes ++ LDA .Audio0/pitch DEO + DUP #50 + .Audio0/pitch DEO DUP TOS ;keypad/series ++ LDA ;draw-keypad JSR2 TOS .input/value LDZ2 #40 SFT2 ++ .input/value STZ2 .input/length LDZ INC .input/length STZ @@ -247,6 +248,7 @@ RTN .stack/length LDZ #07 < ,&continue JCN RTN &continue + #40 .Audio0/pitch DEO .input/value LDZ2 ;push JSR2 RTN @@ -255,6 +257,7 @@ RTN #0000 .input/value STZ2 .stack/length LDZ #00 = ,&continue JCN + #41 .Audio0/pitch DEO ;pop JSR2 POP2 ;draw-stack JSR2 &continue @@ -270,6 +273,7 @@ RTN ( stack empty ) .stack/length LDZ #01 > RTN? + #42 .Audio0/pitch DEO #00 ;draw-modpad JSR2 ;pop JSR2 ;pop JSR2 SWP2 ADD2 ;push JSR2 @@ -282,6 +286,8 @@ RTN &no-push ( stack empty ) .stack/length LDZ #01 > RTN? + + #43 .Audio0/pitch DEO #01 ;draw-modpad JSR2 ;pop JSR2 ;pop JSR2 SWP2 SUB2 ;push JSR2 @@ -294,6 +300,8 @@ RTN &no-push ( stack empty ) .stack/length LDZ #01 > RTN? + + #44 .Audio0/pitch DEO #02 ;draw-modpad JSR2 ;pop JSR2 ;pop JSR2 SWP2 MUL2 ;push JSR2 @@ -306,6 +314,8 @@ RTN &no-push ( stack empty ) .stack/length LDZ #01 > RTN? + + #45 .Audio0/pitch DEO #03 ;draw-modpad JSR2 ;pop JSR2 ;pop JSR2 SWP2 DIV2 ;push JSR2 @@ -475,6 +485,25 @@ RTN RTN &color $1 &state $1 &glyph $2 +( theme ) + +@theme-txt ".theme $1 + +@load-theme ( -- ) + + ;theme-txt .File/name DEO2 + #0006 .File/length DEO2 + #fffa .File/load DEO2 + + .File/success DEI2 #0006 !! ,&ignore JCN + #fffa LDA2 .System/r DEO2 + #fffc LDA2 .System/g DEO2 + #fffe LDA2 .System/b DEO2 + &ignore + ;redraw JSR2 + +RTN + @within-rect ( x* y* rect -- flag ) STH @@ -537,30 +566,24 @@ RTN 0101 0102 0101 0102 0102 0202 - &notes - 484a 4c4d - 4f51 5354 - 5658 595b - 5d5f 6062 - 6465 6769 - -@saw-wav - 0003 0609 0c0f 1215 181b 1e21 2427 2a2d - 3033 3639 3b3e 4143 4649 4b4e 5052 5557 - 595b 5e60 6264 6667 696b 6c6e 7071 7274 - 7576 7778 797a 7b7b 7c7d 7d7e 7e7e 7e7e - 7f7e 7e7e 7e7e 7d7d 7c7b 7b7a 7978 7776 - 7574 7271 706e 6c6b 6967 6664 6260 5e5b - 5957 5552 504e 4b49 4643 413e 3b39 3633 - 302d 2a27 2421 1e1b 1815 120f 0c09 0603 - 00fd faf7 f4f1 eeeb e8e5 e2df dcd9 d6d3 - d0cd cac7 c5c2 bfbd bab7 b5b2 b0ae aba9 - a7a5 a2a0 9e9c 9a99 9795 9492 908f 8e8c - 8b8a 8988 8786 8585 8483 8382 8282 8282 - 8182 8282 8282 8383 8485 8586 8788 898a - 8b8c 8e8f 9092 9495 9799 9a9c 9ea0 a2a5 - a7a9 abae b0b2 b5b7 babd bfc2 c5c7 cacd - d0d3 d6d9 dcdf e2e5 e8eb eef1 f4f7 fafd + +@sin-pcm + 8083 8689 8c8f 9295 989b 9ea1 a4a7 aaad + b0b3 b6b9 bbbe c1c3 c6c9 cbce d0d2 d5d7 + d9db dee0 e2e4 e6e7 e9eb ecee f0f1 f2f4 + f5f6 f7f8 f9fa fbfb fcfd fdfe fefe fefe + fffe fefe fefe fdfd fcfb fbfa f9f8 f7f6 + f5f4 f2f1 f0ee eceb e9e7 e6e4 e2e0 dedb + d9d7 d5d2 d0ce cbc9 c6c3 c1be bbb9 b6b3 + b0ad aaa7 a4a1 9e9b 9895 928f 8c89 8683 + 807d 7a77 7471 6e6b 6865 625f 5c59 5653 + 504d 4a47 4542 3f3d 3a37 3532 302e 2b29 + 2725 2220 1e1c 1a19 1715 1412 100f 0e0c + 0b0a 0908 0706 0505 0403 0302 0202 0202 + 0102 0202 0202 0303 0405 0506 0708 090a + 0b0c 0e0f 1012 1415 1719 1a1c 1e20 2225 + 2729 2b2e 3032 3537 3a3d 3f42 4547 4a4d + 5053 5659 5c5f 6265 686b 6e71 7477 7a7d @font-hex 007c 8282 8282 827c 0030 1010 1010 1010