Skip to content

Instantly share code, notes, and snippets.

@Ismael-VC
Ismael-VC / pong.tal
Created January 21, 2024 17:26
Pong Game in Uxntal.
View pong.tal
( pong.tal )
( devices )
|00 @System [
&vector $2
&pad $6
&r $2
&g $2
&b $2
@Ismael-VC
Ismael-VC / chromatic-scale.tal
Last active May 11, 2023 18:29
Qwerty keyboard input from G2 to G5 (3 octaves) for uxntal piano.tal
View chromatic-scale.tal
(
QWERTY from G2 to G5:
2 3 5 6 7 9 0 = | C#4 D#4 F#4 G#4 A#4 C#5 D#5 F#5
q w e r t y u i o p [ ] | C4 D4 E4 F4 G4 A4 B4 C5 D5 E5 F5 G5
s d g h k l ; | G#2 A#2 C#3 D#3 F#3 G#3 A#3
z x c v b n m , . / | G2 A2 B2 C3 D3 E3 F3 G3 A3 B3
)
.Controller/key DEI
View hellox3.tal
|10 @Console &vector $2 &read $1 &pad $5 &write $1 &error $1
|0100 @on-reset ( -> )
#03 #00
&for
( send ) ;hello-word print-text
( loop ) INC GTHk ?&for
POP2
View macOS-uxn.patch
diff --git a/build.sh b/build.sh
index 28682b5..88076e8 100755
--- a/build.sh
+++ b/build.sh
@@ -67,7 +67,7 @@ fi
mkdir -p bin
CC="${CC:-cc}"
-CFLAGS="${CFLAGS:--std=c89 -Wall -Wno-unknown-pragmas}"
+CFLAGS="${CFLAGS:--std=c89 -Wall -Wno-unknown-pragmas -D_DARWIN_C_SOURCE}"
View gist:28039305bb0a685e69e84b11a85aeab0
(
LDA I
CMP J
BEQ EQL
BGE LBL
)
|10 @Console &vector $2 &read $1 &pad $5 &write $1 &error $1
View verbose-if.tal
@foo ( a b -- bool ) [
( if ) [ ( a b ) EQU ] ?&then [
( else ) [
#00 ( return false )
RTN
] &then [
#01 ( return true )
]
]
RTN
@Ismael-VC
Ismael-VC / if-then-else.tal
Created April 11, 2023 22:15
If statements in uxntal.
View if-then-else.tal
@foo ( a b -- bool )
( if ) [ ( a b ) EQU ] ?&then
( else )
#00 ( return false )
!&end
&then
#01 ( return true )
&end
( endif )
RTN
View console.rom.out
➜ roms uxncli console.rom
Welcome to Uxn!
hello
You said: hello
this is great
You said: this
You said: is
You said: great
@Ismael-VC
Ismael-VC / real.tal
Last active April 5, 2023 23:27
Uxntal REPL.
View real.tal
( hello.tal )
|00 @System [ &vector $2 &wst $1 &rst $1 &pad $4 &r $2 &g $2 &b $2 &debug $1 &halt $1 ]
|10 @Console [ &vector $2 &read $1 &pad $5 &write $1 &error $1 ]
%HALT { #01 .System/halt DEO }
%DEBUG { #01 .System/debug DEO }
%RTN { JMP2r }
%\s { 20 }
%\n { 0a }
View draw.tal
( draw.tal
Simple drawing tool. )
(
@|devices )
|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ]
|20 @Screen [ &vector $2 &width $2 &height $2 &pad $2 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 ]
|90 @Mouse [ &vector $2 &x $2 &y $2 &state $1 &wheel $1 ]