0
0
Fork 0
mirror of https://git.sr.ht/~rabbits/uxn synced 2024-12-18 06:20:18 +00:00
Commit graph

660 commits

Author SHA1 Message Date
Andrew Alderwick
fe22b6288e asma fix: disallow 1 and 3 chars in hex literals and raw hex 2021-11-03 19:38:18 +00:00
Andrew Alderwick
8926bbab2a Fix new apple hidden underneath snake body 2021-11-02 23:40:42 +00:00
Andrew Alderwick
3747574cf9 Fix apple or snake hidden underneath score 2021-11-02 23:40:19 +00:00
Devine Lu Linvega
a2f826121d Added game reset 2021-11-02 14:04:26 -07:00
Devine Lu Linvega
1bf6eaeec0 Basic snake.tal 2021-11-02 13:13:59 -07:00
Andrew Alderwick
4b5183cf0d Remove unfinished repl.tal 2021-10-31 21:25:50 +00:00
Andrew Alderwick
d5f3bc376e Raise errors on hex literals with zero length 2021-10-30 07:48:41 +01:00
Andrew Alderwick
80b4e4f88d Use Keep mode for all LIT opcodes 2021-10-30 00:28:33 +01:00
Andrew Alderwick
035e0d8a3a Fixed error message when zero-page label is not found 2021-10-28 23:12:49 +01:00
neauoire
b792169909 Improved UX for calc.tal 2021-10-20 11:52:51 -07:00
Andrew Alderwick
a09c4fb841 Added error message when label is redefined 2021-10-20 17:36:08 +01:00
Andrew Alderwick
511aa3c5a9 Improved error message for unrecognised token 2021-10-20 17:35:41 +01:00
Andrew Alderwick
0476a5c167 Fixed routine comment. 2021-10-20 17:35:06 +01:00
Andrew Alderwick
4f12079cf4 Stopped incorrectly recognising hex strings longer than four chars 2021-10-20 17:32:32 +01:00
neauoire
df6f123c54 Added primes.tal exercise 2021-10-16 20:16:54 -07:00
Andrew Alderwick
317d71654e Pass output file argument to asma too 2021-10-13 22:58:27 +01:00
neauoire
557584819f Added fizzbuzz example 2021-10-12 18:38:45 -07:00
Andrew Alderwick
26b90ac69c Added detection of recursive include errors. 2021-10-07 23:26:39 +01:00
Andrew Alderwick
3967d27173 Added file name to asma error printout. 2021-10-07 22:58:50 +01:00
Andrew Alderwick
5aca7e5070 Removed unused variable. 2021-10-07 22:44:36 +01:00
Andrew Alderwick
b78d9e1446 Reimplemented software/asma with reading input filename from Console. 2021-10-07 22:00:54 +01:00
Andrew Alderwick
d34ec6584c Added option to write ROM to stdout (when dest-filename is null). 2021-10-07 21:59:49 +01:00
Andrew Alderwick
8a74c3455d Keep track of total lines assembled. 2021-10-07 21:58:54 +01:00
Andrew Alderwick
ac2d30cdb9 Redirected asma messages to stderr. 2021-10-07 21:57:54 +01:00
Andrew Alderwick
0f9b03e0cb Skipped reporting of device label values. 2021-10-07 21:18:25 +01:00
Andrew Alderwick
4d6fc06778 Splitted asma into library and piano demo. 2021-10-07 21:11:47 +01:00
Andrew Alderwick
532c1959dc Made asma line numbers start at zero, not one 2021-10-07 18:17:11 +01:00
Andrew Alderwick
10a723f5d6 Fixed line numbers in asma error reports 2021-10-06 06:58:30 +01:00
Andrew Alderwick
0c6b607f91 Extracted string library from asma 2021-10-06 06:54:03 +01:00
Andrew Alderwick
be2e01e9b3 Extracted heap library from asma 2021-10-06 06:42:19 +01:00
Andrew Alderwick
7058122d25 Extracted binary tree library from asma 2021-10-06 06:41:23 +01:00
Andrew Alderwick
755ccf5665 Implemented includes in asma 2021-10-06 06:14:18 +01:00
Andrew Alderwick
e8f58aa579 Use file-read-chunks library in asma. 2021-10-04 22:28:13 +01:00
Andrew Alderwick
4525d47699 Fixed year usage in prng.tal, thanks makeworld! 2021-10-03 01:05:54 +01:00
neauoire
08fb3e7f0a Close uxnemu on System/halt 2021-10-02 12:06:50 -07:00
neauoire
08f7ef10e5 Moved neralie to software 2021-09-28 20:54:03 -07:00
neauoire
cf5af02e0f Improved calculator 2021-09-26 15:21:16 -07:00
neauoire
c105916fb8 Store center position in datetime.tal 2021-09-26 14:06:18 -07:00
neauoire
ed8de8df7a Added date to datetime example 2021-09-26 13:33:39 -07:00
Andrew Alderwick
51c6e90754 Erase 00f0-00f3 with first zero-page-loader loop 2021-09-24 00:06:03 +01:00
Andrew Alderwick
5f636b96c2 Saved a few bytes in load-rom by using STZ, thanks Delta! 2021-09-23 13:41:57 +01:00
Andrew Alderwick
0e96afa8a9 Minor bugfix 2021-09-23 13:41:57 +01:00
neauoire
17d1830d5a Added bitpad to calc.tal 2021-09-22 17:48:04 -07:00
neauoire
7c9cf2d17c Started implemented bit input to calc.tal 2021-09-22 17:05:18 -07:00
Andrew Alderwick
7fe99617b2 Clear screen when ROM is loaded. 2021-09-22 16:41:25 +01:00
Andrew Alderwick
5e03a765de Added prototype load-rom library to launcher.tal 2021-09-22 08:53:36 +01:00
neauoire
5e7b8a9292 Added theme support for the calculator 2021-09-21 16:37:19 -07:00
neauoire
65678a7a36 Added audio to calc 2021-09-21 12:31:48 -07:00
neauoire
73d577a7c0 Added error placeholder for launcher.tal 2021-09-21 11:53:04 -07:00
neauoire
68a8310830 Muted warnings 2021-09-21 10:45:56 -07:00
neauoire
caa6b018fa Experimenting with rom launching mode 2021-09-21 10:04:52 -07:00
neauoire
e79004a075 Added basic launcher 2021-09-21 09:44:10 -07:00
neauoire
6821bea9c0 The calc pushes values on opcode 2021-09-20 15:51:54 -07:00
neauoire
ba76eae6a8 Removed unused routines in calc.tal 2021-09-20 15:44:05 -07:00
neauoire
0c8a7feec5 Working copy of the calc.tal 2021-09-20 15:36:13 -07:00
neauoire
73497a1065 Starting keyboard input to calc.tal 2021-09-20 13:42:23 -07:00
neauoire
781344268f Limited push/pop in calc.tal 2021-09-19 08:25:23 -07:00
neauoire
84513d738d The calculator can now add 2021-09-18 21:25:50 -07:00
neauoire
6cc0fdec26 Starting stack manipulation for calc 2021-09-18 20:24:39 -07:00
neauoire
a5201767d7 Clear on resize 2021-09-18 17:18:20 -07:00
neauoire
bca5562eec The screen width/height ports can be written to 2021-09-18 16:51:20 -07:00
neauoire
3d8cf7c257 Added input to the calculator 2021-09-18 12:27:19 -07:00
neauoire
39a93bda40 Started calculator project 2021-09-18 12:01:34 -07:00
neauoire
4406c2856c Sublabels add refs to root labels in uxnasm 2021-09-16 09:11:53 -07:00
neauoire
9835ec4f20 Fixed address issue with screen auto 2021-09-10 09:07:08 -07:00
neauoire
266152e260 Ported devw/devr changes to uxn.c 2021-09-08 17:51:23 -07:00
Andrew Alderwick
174ab66ddb Added the first library snippet 2021-08-30 23:32:24 +01:00
neauoire
3da1af90a0 Improved shapes example 2021-08-30 14:53:01 -07:00
Andrew Alderwick
a92fd8fb22 Expanded File/offset to 32-bit /offset-hs and /offset-ls 2021-08-28 00:37:27 +01:00
Andrew Alderwick
a1d18f62f3 More loop optimisations 2021-08-27 00:11:33 +01:00
Andrew Alderwick
0e236eeb91 More INC optimisation in loops 2021-08-26 23:50:27 +01:00
Andrew Alderwick
93a4802782 Lots of INC optimisations 2021-08-26 23:31:46 +01:00
neauoire
7598f40f30 Improved README 2021-08-25 15:53:37 -07:00
Andrew Alderwick
61b8750bae Allowed long tokens within comments (typically URLs) 2021-08-25 22:56:24 +01:00
Andrew Alderwick
5b4ec0be6b Added a second PRNG with longer period 2021-08-25 21:59:30 +01:00
Andrew Alderwick
f4e9e2e915 Added credit for PRNG 2021-08-25 21:08:30 +01:00
Andrew Alderwick
4b5c26c6ca Added PRNG demo example 2021-08-25 21:04:25 +01:00
neauoire
6ec92bf748 Improved audio demo 2021-08-23 10:10:17 -07:00
neauoire
80f8998032 Combined musictracker with audio 2021-08-23 10:08:19 -07:00
neauoire
fb72dd5b98 Reverted fix in Bifurcan 2021-08-22 19:57:25 -07:00
neauoire
12009e88c8 Minor optimizations 2021-08-22 19:56:03 -07:00
Andrew Alderwick
f00ee8c80e Updated neralie for 1bpp ports 2021-08-21 21:58:01 +01:00
neauoire
786fd90a63 Added Ctrl to Bifurcan 2021-08-21 12:35:28 -07:00
Andrew Alderwick
324e72a7fc Added Console output on musictracker.tal to demonstrate Audio*/vector 2021-08-20 22:46:25 +01:00
neauoire
3e747e9220 Optimized shapes 2021-08-18 11:40:51 -07:00
neauoire
e3f181579b Optimized gui examples 2021-08-18 11:14:29 -07:00
Andrew Alderwick
169c4b1402 Updated asma with new opcode use 2021-08-18 07:33:53 +01:00
neauoire
da229d5a82 Examples cleanup 2021-08-17 19:40:07 -07:00
neauoire
5167a103ec Fixed issue with null vectors 2021-08-17 19:30:34 -07:00
neauoire
ddac370775 Improvement of examples 2021-08-17 19:17:47 -07:00
neauoire
511b2366ee Optimized life 2021-08-17 15:24:37 -07:00
Andrew Alderwick
5d4020ad31 Replaced easy multiplications and modulos 2021-08-17 20:55:10 +01:00
Andrew Alderwick
5d094603b0 Fixed asma-test.sh 2021-08-17 20:33:53 +01:00
Andrew Alderwick
ad07c29935 Replaced trivial multiplications with shifts and additions 2021-08-17 20:16:46 +01:00
neauoire
acf6dcee48 Removed unused macro in console example 2021-08-16 18:45:27 -07:00
neauoire
19322f1d23 Use NEQk NIP pattern for polycat 2021-08-15 18:09:21 -07:00
neauoire
f59537d993 Use NEQk NIP pattern for piano 2021-08-15 18:03:34 -07:00
neauoire
2ea0425c47 Added NIP to piano 2021-08-15 13:59:56 -07:00
Andrew Alderwick
107a59affa Rearranged POP, DUP, NIP opcodes 2021-08-15 21:34:33 +01:00
Andrew Alderwick
93dae917fb Added NIP optimisations 2021-08-15 21:25:58 +01:00
Andrew Alderwick
be360ffc1e Replaced NOP with NIP 2021-08-15 21:22:01 +01:00
Andrew Alderwick
e2190d84d8 Reverted "Removed OVR opcode and replaced with NIP" and uxn-fast.c update.
This reverts commits 1afe39fba4 and 3d3569bab7.
2021-08-15 21:07:32 +01:00
neauoire
1afe39fba4 Removed OVR opcode and replaced with NIP 2021-08-15 12:01:22 -07:00
Andrew Alderwick
ca93072e06 Added tiny optimisation to piano.tal 2021-08-10 19:37:40 +01:00
Andrew Alderwick
cb649172bd Made console.tal compatible with asma 2021-08-10 19:36:07 +01:00
neauoire
9b4aa10f07 Optimized Piano 2021-08-09 11:12:11 -07:00
neauoire
c66260982f Added frame vector to screen.tal 2021-08-08 10:21:58 -07:00
neauoire
897950dcd4 Optimized life.tal 2021-08-07 20:03:13 -07:00
neauoire
4da5e16501 Removed controller.keys 2021-08-04 10:05:01 -07:00
neauoire
b6c40129e4 Cleanup on controller.tal 2021-08-02 11:19:36 -07:00
neauoire
d1755a5e5b Wrote a better controller example 2021-08-02 11:15:21 -07:00
neauoire
55d0ca4a1e Optimized screen.tal 2021-08-02 08:59:16 -07:00
neauoire
c3be359163 Reverted changes to screen.tal 2021-08-01 11:28:37 -07:00
Andrew Alderwick
90acf9ceec Animated screen.tal to demonstrate transparent sprites 2021-08-01 19:21:33 +01:00
neauoire
b826d78a56 Pushed new blending modes 2021-08-01 11:00:07 -07:00
Andrew Alderwick
19b0aa2083 Migrated Screen/color to Screen/pixel and/or Screen/sprite 2021-07-31 21:58:33 +01:00
neauoire
8bf99e6d76 Changed the screen.tal colors to fit the Varvara docs 2021-07-30 20:10:26 -07:00
neauoire
d2c3d0e524 Started implementing the sprite port for the screen device 2021-07-30 19:23:02 -07:00
Andrew Alderwick
616b9445d4 Lined up blank.tal columns 2021-07-29 23:31:09 +01:00
Andrew Alderwick
dc4588f2eb Updated blank.tal devices to match uxnemu 2021-07-29 23:30:21 +01:00
neauoire
b46d317b4f Added system device to uxncli 2021-07-28 15:41:07 -07:00
neauoire
7b7f4fd0f7 System now carries the debug flag, System/0xf is now stopping eval 2021-07-28 10:29:09 -07:00
neauoire
c5b8595fb5 Reduced PAD, display usage:, and added 2 fonts 2021-07-24 10:27:27 -07:00
Andrew Alderwick
ced41f6d70 Progress on REPL 2021-07-11 21:32:32 +01:00
Andrew Alderwick
91fedff46d Extended Console to write to FD 2-8 (most useful for 2, stderr) 2021-07-11 17:54:30 +01:00
Andrew Alderwick
78cd998177 Added repl project skeleton 2021-07-10 21:50:13 +01:00
Andrew Alderwick
2598899e89 Renamed fonts to always include their size 2021-07-10 21:25:40 +01:00
Andrew Alderwick
30a2e2356c Converted specter8, left and orca fonts to uf1 2021-07-10 21:18:12 +01:00
Andrew Alderwick
95789d5a7e Corrected load sizes for uf[1-3] fonts 2021-07-10 20:23:27 +01:00
neauoire
c751b77ca8 Added Sans Font 2021-07-10 11:03:08 -07:00
neauoire
dcdf618087 Improved piano example 2021-07-09 11:38:45 -07:00
Andrew Alderwick
358a902c16 Ported remaining examples to new simplified Console device 2021-07-07 21:20:14 +01:00
Andrew Alderwick
d3aaf705f3 Ported asma to new simplified Console device 2021-07-07 21:04:53 +01:00
neauoire
596f1a43b1 Clamp octave in piano example 2021-07-05 09:26:00 -07:00
neauoire
eadfdbe898 Use uf1/uf2/uf3 in font example 2021-07-04 19:19:08 -07:00
neauoire
a7e608adf1 Fixed broken uf1 fonts 2021-07-04 19:17:56 -07:00
neauoire
d7c1dd826d Removed debug from font 2021-07-04 11:44:19 -07:00
neauoire
edb7c1e0ca Fixed small issues with coloring in font 2021-07-04 11:38:51 -07:00
neauoire
fe1e3cebc3 Cleanup of the fonts folder 2021-07-04 11:14:27 -07:00
neauoire
eeb85bdcb1 Modified assembler errors 2021-07-03 20:24:36 -07:00
neauoire
a7060c15ca Optimized the font routines 2021-07-03 12:13:48 -07:00
neauoire
7e4cb5fd1e Minor optimization to font.tal 2021-07-03 10:38:20 -07:00
neauoire
2a95c710b9 Improving the font example 2021-07-03 10:24:23 -07:00
neauoire
ab4a731300 Minor optimizations to the font example 2021-07-03 09:51:03 -07:00
neauoire
b8d06b7e6e Cleaned up font example 2021-07-03 09:11:29 -07:00
neauoire
1bf35de7ad Optimized venice14 2021-07-02 12:33:12 -07:00
neauoire
8cc7d5c2bb Added a few large fonts 2021-07-02 12:12:51 -07:00
neauoire
3ecf16b504 Font example 2021-07-02 10:57:50 -07:00
neauoire
cf0790a89d Improved the key example 2021-07-01 17:33:55 -07:00
neauoire
f86a5447c4 Removed unused font 2021-07-01 15:32:23 -07:00
neauoire
d81eb4a2d0 Cleanup fonts 2021-07-01 15:31:46 -07:00
neauoire
c9f10cd45a Implemented console i/o to drum-rack 2021-06-29 20:54:11 -07:00
neauoire
74fc816810 Flagged functions as static 2021-06-28 14:42:36 -07:00
neauoire
95aa3dba35 Simplified hello world 2021-06-28 09:42:55 -07:00
neauoire
274edad29d Simplified console 2021-06-28 09:40:29 -07:00
neauoire
2aaf936573 Minor optimization to piano 2021-06-27 16:48:38 -07:00
neauoire
f8f2f66756 The console read byte is its own location 2021-06-27 16:42:47 -07:00
Andrew Alderwick
802aa51d54 Added Console/vector implementation with example 2021-06-27 21:45:50 +01:00
neauoire
4e8375d8df Removed the Midi device 2021-06-26 13:17:41 -07:00
neauoire
04582724d5 Improved the keys example top reflect mods 2021-06-25 08:36:33 -07:00
Andrew Alderwick
6bf7e7f7a1 Fixed path to piano.tal in asma.tal 2021-06-08 22:29:54 +01:00
Andrew Alderwick
b6239ad549 Fixed uncontrolled expansion of recursive macros in asma 2021-06-04 08:25:31 +01:00
Andrew Alderwick
824444351a Replaced Mouse/chord with Mouse/wheel 2021-05-31 23:08:34 +01:00
neauoire
716e36aa5f Re-added the label example 2021-05-31 14:52:25 -07:00
neauoire
fbc0b762c9 Renamed USM to TAL files 2021-05-31 14:50:36 -07:00
neauoire
0183c05d37 Added piano samples in project 2021-05-28 12:37:59 -07:00
neauoire
d163c43201 Improved uxncli and moved all demos into examples 2021-05-26 10:02:13 -07:00
neauoire
15ffab9d84 Removed left/orca from the repo 2021-05-24 20:53:08 -07:00
neauoire
e71817759b Added more details to the README 2021-05-24 20:39:40 -07:00
Andrew Alderwick
7f158c9d66 Optimised MUL2 by powers of 2 to SFT2 2021-05-24 22:52:11 +01:00
Andrew Alderwick
00df90c47e Optimised DIV2 by powers of 2 to SFT2 2021-05-24 22:36:15 +01:00
Andrew Alderwick
e5f2c2bbd2 Slowed down life demo 2021-05-24 22:35:32 +01:00
Andrew Alderwick
776b291b3d Fixed macro names in musictracker 2021-05-24 22:30:01 +01:00
Andrew Alderwick
693742a7a4 Fixed label alignment 2021-05-24 22:27:45 +01:00
Andrew Alderwick
ebfc496ca2 Fixed background disappearing after theme change 2021-05-24 22:25:02 +01:00
Andrew Alderwick
ea69dff8a8 Updated SFT2 to take byte for shift amount 2021-05-23 16:27:15 +01:00
Andrew Alderwick
9abcca773b Made simple load/save examples composable 2021-05-21 14:34:22 +01:00
Andrew Alderwick
85a33c6b03 Added simple File/load example 2021-05-21 14:30:06 +01:00
Andrew Alderwick
8766eb1a11 Added simple File/save example 2021-05-21 14:10:57 +01:00
neauoire
fbe907a2eb Moved noodle to its own repo 2021-05-20 15:17:40 -07:00
neauoire
386b477611 Link to 9front from README 2021-05-17 15:13:46 -07:00
Andrew Alderwick
3baad0adc1 Added proportional font example 2021-05-17 07:44:50 +01:00
Andrew Alderwick
f88df1a08d Fixed error in handling invalid source 2021-05-16 10:58:24 +01:00
Andrew Alderwick
28d5284695 Added test suite for asma 2021-05-16 10:20:42 +01:00
Andrew Alderwick
c6a776cbe5 Enlarged load and save buffers 2021-05-16 10:20:42 +01:00
Andrew Alderwick
ac646d1c3d Added printout of heap usage 2021-05-16 10:20:42 +01:00
Andrew Alderwick
fa91704ef9 Prevented infinite loop when asma's output is empty 2021-05-16 10:20:42 +01:00
neauoire
3b9519d945 Created within-rect routine 2021-05-15 21:35:01 -07:00
Andrew Alderwick
0d20b4309a Added documentation and automatic execution of assembled source 2021-05-15 21:50:59 +01:00
neauoire
e289b359d8 Ported automata 2021-05-15 13:09:11 -07:00
Andrew Alderwick
63081b64cd Implemented writing to output file 2021-05-15 21:02:33 +01:00
Andrew Alderwick
1f80b2907b Added public interface to asma 2021-05-15 19:58:50 +01:00
Andrew Alderwick
e27bde2879 Stopped using relative offsets in sublabels 2021-05-15 19:06:15 +01:00
Andrew Alderwick
300f3dfa75 Don't preseed devices in label tree. 2021-05-15 18:25:06 +01:00
Andrew Alderwick
8bf9aa78da Progress on asma 2021-05-15 18:08:08 +01:00
Andrew Alderwick
72dd7d5a87 Optimized some MOD operations 2021-05-15 09:44:20 +01:00
Andrew Alderwick
e442342664 Dealt with source files that don't end with whitespace 2021-05-14 23:02:41 +01:00
Andrew Alderwick
ac91aea27b Implemented address changes and rewind detection 2021-05-14 21:22:55 +01:00
Andrew Alderwick
0367110b80 Added message types for logging or supression 2021-05-14 21:21:46 +01:00
Andrew Alderwick
b2b5932a5a Added dump of asma's labels after run 2021-05-14 08:25:11 +01:00