diff --git a/gui/shaviankb/build.sh b/gui/shaviankb/build.sh new file mode 100755 index 0000000..7885b7e --- /dev/null +++ b/gui/shaviankb/build.sh @@ -0,0 +1,27 @@ +#!/bin/sh -e + +ASM="uxncli $HOME/roms/drifblim.rom" +EMU="uxn11" +LIN="uxncli $HOME/roms/uxnlin.rom" + +ID="shaviankb" +SRC="${ID}.tal" +DST="${ID}.rom" + +CPY="$HOME/roms" +ARG="" + +if [[ "$*" == *"--lint"* ]] +then + $LIN $SRC +fi + +$ASM $SRC $DST + +if [[ "$*" == *"--save"* ]] +then + cp $DST $CPY +fi + +$EMU $DST + diff --git a/gui/shaviankb/shaviankb.tal b/gui/shaviankb/shaviankb.tal new file mode 100644 index 0000000..ef93155 --- /dev/null +++ b/gui/shaviankb/shaviankb.tal @@ -0,0 +1,100 @@ +( uxnemu shaviankb.rom | listener ) + +|00 @System &vector $2 &expansion $2 &wst $1 &rst $1 &metadata $2 &r $2 &g $2 &b $2 &debug $1 &state $1 +|10 @Console &vector $2 &read $1 &pad $4 &type $1 &write $1 &error $1 +|20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 + +|0000 + +|0100 + +@on-reset ( -> ) + #f0ef .System/r DEO2 + #f0e6 .System/g DEO2 + #f0e2 .System/b DEO2 + #0100 .Screen/width DEO2 + #0080 .Screen/height DEO2 + + BRK + +@ ( -- ) + + + JMP2r + +@ ( -- ) + [ LIT2 26 -Screen/auto ] DEO + ;button-icn/top .Screen/addr DEO2 + [ LIT2 01 -Screen/sprite ] DEOk DEOk + ( ) ;button-icn/middle .Screen/addr DEO2 + DEOk DEO + .Screen/x DEI2k #0018 ADD2 ROT DEO2 + .Screen/y DEI2k #0020 SUB2 ROT DEO2 + JMP2r + +@ ( short* -- ) + SWP /b + &b ( -- ) + DUP #04 SFT /c + &c ( -- ) + #0f AND DUP #09 GTH #27 MUL ADD [ LIT "0 ] ADD #18 DEO + JMP2r + +@button-icn &top [ + 001f 2040 4040 4040 00ff 0000 0000 0000 + 00f8 0402 0202 0202 ] &middle [ + 4040 4040 4040 4040 0000 0000 0000 0000 + 0202 0202 0202 0202 ] &bottom [ + 4040 4040 4020 1f00 0000 0000 0000 ff00 + 0202 0202 0204 f800 ] + +@shavian [ + 0000 0060 1008 0808 0808 0808 0000 0000 + 0000 0008 1868 0808 0808 0808 0000 0000 + 0000 0004 0404 3c40 4040 403c 0000 0000 + 0000 0008 0808 0808 0808 1060 0000 0000 + 0000 0060 1008 3844 8484 8870 0000 0000 + 0000 0038 4440 2010 0804 4438 0000 0000 + 0000 0008 1020 2040 4040 4438 0000 0000 + 0000 0008 10e0 2040 4040 4438 0000 0000 + 0000 0040 4020 2010 1008 0804 0000 0000 + 0000 0030 4848 4848 4848 30cc 0000 0000 + 0000 0000 0000 2020 2020 2020 2010 0c00 + 0000 0000 0000 4040 4040 4040 5860 4000 + 0000 0000 0000 7804 0404 0478 4040 4000 + 0000 0000 0000 1820 4040 4040 4040 4000 + 0000 0000 0000 3844 8484 8870 4020 1800 + 0000 0000 0000 3844 0408 1020 4044 3800 + 0000 0000 0000 3844 0404 0408 0810 2000 + 0000 0000 0000 3844 0404 0408 0e10 2000 + 0000 0000 0000 0408 0810 1020 2040 4000 + 0000 0000 0000 cc30 4848 4848 4848 3000 + 0000 0000 0000 3840 4040 4038 0000 0000 + 0000 0000 0000 0c10 1010 1060 0000 0000 + 0000 0000 0000 1010 1010 1010 0000 0000 + 0000 0000 0000 4040 4040 201c 0000 0000 + 0000 0000 0000 0404 0404 0870 0000 0000 + 0000 0000 0000 1c20 4040 4040 0000 0000 + 0000 0000 0000 7008 0404 0404 0000 0000 + 0000 0000 0000 4444 2828 1010 0000 0000 + 0000 0000 0000 0810 6010 1008 0000 0000 + 0000 0000 0000 1c20 2018 0870 0000 0000 + 0000 0000 0000 3804 0404 0438 0000 0000 + 0000 0000 0000 6010 1010 100c 0000 0000 + 0000 0000 0000 404c 5464 0404 0000 0000 + 0000 0000 0000 7c40 4040 201c 0000 0000 + 0000 0000 0000 7c04 0404 0870 0000 0000 + 0000 0000 0000 7c08 1010 2020 0000 0000 + 0000 0000 0000 3844 4444 4438 0000 0000 + 0000 0000 0000 1010 2828 4444 0000 0000 + 0000 0000 0000 2010 0c10 1020 0000 0000 + 0000 0000 0000 7008 0830 201c 0000 0000 + 0000 0000 0000 3c42 4232 12e4 0000 0000 + 0000 0000 0000 cc22 22c2 8478 0000 0000 + 0000 0000 0000 1c22 2272 8264 0000 0000 + 0000 0000 0000 6482 7222 221c 0000 0000 + 0000 0000 0000 3c42 8282 828c 0000 0000 + 0000 0000 0000 bcc2 8282 829c 0000 0000 + 0000 0000 0000 4e50 6040 4040 0000 0000 + 0000 0080 8080 4848 5454 2222 0000 0000 ] + diff --git a/gui/shaviankb/untitled10x10.chr b/gui/shaviankb/untitled10x10.chr new file mode 100644 index 0000000..0b331b1 Binary files /dev/null and b/gui/shaviankb/untitled10x10.chr differ