Commit Graph

808 Commits

Author SHA1 Message Date
Andrew Alderwick b1bbfb3976 (asma) Fix sublabel references when no labels are defined.
An example of code that failed with asma is in brainfuck.tal.
2022-02-18 09:27:58 +00:00
neauoire 85a6d348ba (brainfuck.tal) Optimized 2022-02-15 10:24:11 -08:00
neauoire c982eb988b (controller.tal) Print debugger on start button 2022-02-10 19:29:50 -08:00
sroccaserra ed22793a69 (monospace.tal) Remove values left on the stack
Functions draw-uf1 and draw-uf1-linebreaks are leaving two 8 bit values
on the stack, this commit removes them.
2022-02-10 08:10:20 -08:00
neauoire 5abb885eb5 (life.tal) Minor cleanup 2022-02-08 20:04:18 -08:00
neauoire db431f75fe (piano.tal) Optimized octave drawing routine 2022-02-08 19:45:29 -08:00
neauoire 51c422c9cb (math32.tal) Removed globals 2022-02-07 19:35:07 -08:00
Andrew Alderwick b5669a52be Saturate multiplication in mandelbrot. 2022-02-08 01:34:24 +00:00
neauoire 20d6ab3cb4 (mandelbrot.tal) Added fractal 2022-02-07 16:59:34 -08:00
neauoire 1a34fcefa9 Added libraries for math32 2022-02-07 15:52:22 -08:00
neauoire 3496a38606 Added a few extra fonts 2022-02-06 20:03:45 -08:00
neauoire a3dfbe19a0 (launcher.tal) Resizes on launch 2022-02-06 11:56:42 -08:00
neauoire 272b1ed162 (cube3d.tal) Added new demo 2022-02-05 15:37:04 -08:00
neauoire 7511f4c2ac Added --install flag to build script 2022-02-03 19:52:12 -08:00
neauoire 7c46d9ce8e Ported fonts to AUTO-Y 2022-02-01 09:46:49 -08:00
neauoire 3f94152050 (calc.tal) Optimizations 2022-01-26 10:14:18 -08:00
neauoire 61be564f09 Merge branch 'main' of git.sr.ht:~rabbits/uxn 2022-01-23 14:19:19 -08:00
neauoire 94882720be (dos.tal) Improved error reporting 2022-01-23 14:19:10 -08:00
Andrew Alderwick deace3b79a Remove old debugging support. 2022-01-23 19:35:18 +00:00
neauoire b486d9585b (dos.tal) When in doubt, add flowers 2022-01-23 11:18:55 -08:00
neauoire dacd2ff26c (dos.tal) Improved hx view 2022-01-23 10:48:26 -08:00
neauoire 44789e4c00 (dos.tal) Impemented time[tm] command 2022-01-23 10:31:32 -08:00
neauoire 97003d1ae2 (dos.tal) Added command documentation in ls cmd 2022-01-23 10:03:15 -08:00
neauoire ebf5b633a5 (dos.tal) Started a mini DOS 2022-01-22 20:47:01 -08:00
neauoire 56528dbcd7 (wireworld.tal) Minor cleanup 2022-01-22 16:32:46 -08:00
DeltaF1 774dd27a53 Remove memory copying from wireworld
- Store two world buffers and swap between them each update
2022-01-22 16:29:08 -08:00
neauoire 0932e4165b (wireworld.tal) Clear on select+start 2022-01-22 14:54:02 -08:00
neauoire 4ad5c8f9fa (wireworld.tal) Optimized morph 2022-01-22 14:48:07 -08:00
neauoire a17b442fe2 (launcher.tal) Release inputs on load-rom 2022-01-21 20:44:29 -08:00
neauoire 42a804ddc0 (wireworld.tal) Erase with mouse2 2022-01-21 15:23:02 -08:00
neauoire a0f2fa4462 (wireworld.tal) Cleanup 2022-01-21 15:14:36 -08:00
neauoire 30cef63b91 (wireworld.tal) Added wireworld implementation 2022-01-21 15:02:46 -08:00
neauoire f9e8faa8c3 (proquints.tal) Added a proquints encoder 2022-01-17 12:06:50 -08:00
neauoire c1d42a97ce (binstr.tal) Added a binary to string file converter in utils 2022-01-16 14:30:46 -08:00
neauoire 35953312ea (calc.tal) Removed leading zeros 2022-01-16 10:44:32 -08:00
neauoire acbd654165 (launcher.tal) Fixed scrolling issue after assembly 2022-01-16 09:22:37 -08:00
neauoire 4d9ba05045 (calc.tal) Modified the multiply symbol 2022-01-15 19:41:22 -08:00
Andrew Alderwick 7ffaa25475 Renamed devices/datetime.tal to demos/clock.tal. 2022-01-16 01:50:06 +00:00
neauoire 2ead7840fd Launcher now assembles tal files 2022-01-15 11:15:47 -08:00
neauoire bec7096c0b Implemented proper decimal mode 2022-01-15 10:13:20 -08:00
neauoire b48db8278f (monospace.tal) Added a 8x8 label drawing example 2022-01-13 10:25:31 -08:00
neauoire 459855d825 Removed supervisor 2022-01-12 18:40:51 -08:00
neauoire 0518385a6d Added uxn32 and uxn16 chr pictures 2022-01-12 11:54:19 -08:00
Andrew Alderwick 41de322a75 Add support for interrupting Uxn during execution. 2022-01-12 11:33:49 +00:00
neauoire 38d2c7cbd7 (boot.rom) Renamed to launcher.rom 2022-01-10 20:35:34 -08:00
neauoire 91560c6d24 (picture.tal) Added example of drawing a picture 2022-01-09 18:13:18 -08:00
neauoire 4657fe2490 (gui/label.tal) Use UF2 properly 2022-01-09 17:04:54 -08:00
neauoire a8c384daec (animation.tal) Minor optimizations 2022-01-09 13:07:48 -08:00
neauoire 3ed8a61625 (boot.tal) Fixed issue with empty folders 2022-01-08 17:42:38 -08:00
neauoire e89ad768aa (boot.tal) Added little folder icons 2022-01-08 17:22:04 -08:00
neauoire 715205f2dd (boot.tal) Fixed issue with scroll 2022-01-08 14:13:36 -08:00
neauoire e6ac67d01b (bool.tal) Added mouse scroll 2022-01-08 14:00:33 -08:00
neauoire 35b0d84ceb (boot.tal) Optimizaitons 2022-01-08 13:34:26 -08:00
neauoire 5004ee1339 The file device cannot write on the supervisor 2022-01-08 10:03:21 -08:00
neauoire b328a4e87d Commented the fkey controls temporarily 2022-01-07 11:36:04 -08:00
neauoire 38334a633b Pass fn keys directly to the supervisor 2022-01-07 10:55:09 -08:00
neauoire 41d0911d13 The supervisor program now uses its own vectors 2022-01-06 19:51:34 -08:00
neauoire 1a7af4d8d0 Supervisor is now watching the device page 2022-01-06 19:20:50 -08:00
neauoire ed1f6e6263 Connected error reporting and the hypervisor 2022-01-06 14:32:28 -08:00
neauoire adc4780630 (hypervisor)Added visual guides 2022-01-05 21:18:46 -08:00
neauoire 3cc2ba98f0 First hypervisor 2022-01-05 20:44:33 -08:00
Andrew Alderwick 9024963de1 Add basic in-Uxn debugger and usage example. 2022-01-05 17:27:50 +00:00
Andrew Alderwick 4cbb661f48 Implement System/vector for debugging. 2022-01-05 17:27:24 +00:00
neauoire c4746c2601 (polycat) Rewrote 2022-01-03 10:19:08 -08:00
neauoire 4ac632f227 Remove debugger from console.tal 2022-01-01 15:24:18 -08:00
neauoire cca1253376 Use calloc for memory array 2022-01-01 15:20:48 -08:00
Andrew Alderwick 23a514b3ba Support nested comments in asma too. 2021-12-29 11:59:37 +00:00
Andrew Alderwick 86674da93e Bring etc/asma.moon up to date. 2021-12-29 11:59:37 +00:00
neauoire 2a9fc00441 Renamed mouse mod to mouse scroll 2021-12-28 11:21:56 -08:00
neauoire 69f72485c7 Invert y scroll 2021-12-28 10:56:53 -08:00
neauoire a1dc75a2bc Implemented scroll x/y 2021-12-28 10:45:34 -08:00
neauoire 5af50c7ca0 (terminal.tal) Created a basic terminal example 2021-12-20 11:16:09 -08:00
neauoire ca1d830055 (font.tal) Migrated to AUTO-Y-ADDR 2021-12-16 10:46:27 -08:00
neauoire d3b435c646 (ako1010) Painted missing pixels 2021-12-14 11:23:57 -08:00
neauoire 74ab9c85ab (blank.tal) Fixed non-compilation error 2021-12-11 14:31:14 -08:00
neauoire 63c589490c (blank.tal) Cleaned up 2021-12-11 14:28:10 -08:00
neauoire 6e810a080d (subleq.tal) Added new exercise 2021-12-11 10:47:14 -08:00
Andrew Alderwick 9970b65094 Renamed and signed 100r demo. 2021-12-11 16:32:12 +00:00
Andrew Alderwick 19095def48 Add 100r animated logo demo. 2021-12-11 16:28:23 +00:00
neauoire f1437c993a Removed picture.tal 2021-12-09 14:10:24 -08:00
neauoire 1b362b4fcd (dungeon.tal) Starting a little dungeon exploration demo 2021-12-07 18:07:09 -08:00
neauoire bae2d37fc2 (uxnasm) Only catch hex labels with slen of 2 or 4 2021-12-06 09:01:48 -08:00
neauoire b7ea0b7868 Added Rule-110 2021-12-04 11:02:14 -08:00
Andrew Alderwick 113220b10d Deprecate file-read-chunks by incorporating it inside asma. 2021-12-01 22:01:36 +00:00
DeltaF1 a4bed43880 Fix slowdown in draw-browser/clear
Make the clear routine only clear lines up to the screen width.
This fixes slowdown on wasted clearing of off-screen tiles.

TODO: Only clear/draw lines that will be on the screen.
2021-11-29 09:24:19 -08:00
Andrew Alderwick 58eacef7d4 (life.tal) Remove debugging output. 2021-11-28 19:10:08 +00:00
Andrew Alderwick 6ba2af5c62 Avoid combining literals across | or $ pads. 2021-11-28 18:07:22 +00:00
Andrew Alderwick 9415c4e04a (asma) Correct relative offsets 2021-11-28 18:07:22 +00:00
Andrew Alderwick 1f5086a260 (asma) Combine byte literals 2021-11-28 01:30:26 +00:00
Andrew Alderwick 24e1820d12 Add RLE text import to life.tal 2021-11-28 00:04:34 +00:00
Andrew Alderwick 6996f1b4f5 Remove invalid comment syntax in darena. 2021-11-28 00:04:34 +00:00
neauoire 6ff202a23c (boot.rom) Scrolling support 2021-11-27 11:38:12 -08:00
Andrew Alderwick cb30ac7c11 Remove flag constants in asma. 2021-11-22 07:05:07 +00:00
Devine Lu Linvega d7059eccd4 (calc.tal) Optimizations 2021-11-21 10:54:38 -05:00
Devine Lu Linvega baeed39e04 (logic.tal) Cleanup 2021-11-20 17:37:48 -05:00
Devine Lu Linvega a0ba0e4e79 (logic.tal) Displaying basic gates 2021-11-20 16:17:26 -05:00
Devine Lu Linvega 65d7de8176 (logic.tal) Input can be toggled 2021-11-20 16:06:45 -05:00
Devine Lu Linvega 6262078a04 (logic.tal) Starting logic gates playground 2021-11-20 15:38:01 -05:00
Devine Lu Linvega 7dfce364a5 (clock.tal) Moved watchface drawing outside of RESET 2021-11-20 13:16:24 -05:00
Devine Lu Linvega 31d1503548 (clock.tal) Fixed routine comments 2021-11-20 13:12:12 -05:00
Devine Lu Linvega 5f010b485c (clock.tal) Added minute offset to hour needle 2021-11-20 12:50:41 -05:00
Devine Lu Linvega 6c8600d6b3 (clock.tal) Draw markers in watchface 2021-11-20 12:37:59 -05:00
Devine Lu Linvega 2f648e1e8e (clock.tal) Single rotation routine 2021-11-20 12:18:45 -05:00
Devine Lu Linvega 14b057cd53 (clock.tal) Moved buffers to zero-page 2021-11-20 11:12:25 -05:00
Devine Lu Linvega f0ba07acde (clock.tal) Print date 2021-11-19 17:31:15 -05:00
Devine Lu Linvega e8480dc669 (clock.tal) Optimizations 2021-11-19 12:03:27 -05:00
Devine Lu Linvega 0dc6515e08 (clock.tal) Optimizations 2021-11-19 11:46:28 -05:00
Devine Lu Linvega 9ad9a51599 Merge branch 'main' of git.sr.ht:~rabbits/uxn 2021-11-19 11:39:01 -05:00
Devine Lu Linvega 7f4698d9e2 (clock.tal) Optimizations 2021-11-19 11:37:27 -05:00
Andrew Alderwick d053d0c97f Bugfix to asma. 2021-11-19 00:22:35 +00:00
Devine Lu Linvega 5dafa039f1 (clock.tal) Added day of the week 2021-11-18 12:47:05 -05:00
Andrew Alderwick c3ac41c41d Change "include" word into ~ rune for includes. 2021-11-17 22:06:00 +00:00
Andrew Alderwick 312429bcd8 Remove obsolete comment 2021-11-17 21:38:12 +00:00
Devine Lu Linvega 7500317e4e (calc.tal) Added decimal printing 2021-11-17 15:54:47 -05:00
Devine Lu Linvega 4ae6a9f870 (calc.tal) Minor cleanup 2021-11-17 15:07:14 -05:00
Devine Lu Linvega 8bdf4419b9 (calc.tal) Mouse release macro 2021-11-17 14:44:48 -05:00
Devine Lu Linvega e2a64438cd (calc.tal) Minor cleanup 2021-11-17 14:35:59 -05:00
Devine Lu Linvega 64ec555146 (piano.tal) Added controller controls 2021-11-17 12:24:57 -05:00
Devine Lu Linvega 26040d19cb (clock.tal) Higher font for digits 2021-11-16 14:35:08 -05:00
Devine Lu Linvega dd6adb3f73 (clock.tal) Fixed issue with hour needle 2021-11-16 13:00:51 -05:00
Devine Lu Linvega c7759f6212 (clock.tal) Minor optimizations 2021-11-16 12:10:48 -05:00
Devine Lu Linvega 0114af1a10 Added nametable demo 2021-11-16 10:35:11 -05:00
Devine Lu Linvega 10aec891e7 (brainfuck.tal) Removed extra labels 2021-11-13 11:08:21 -05:00
Devine Lu Linvega 92b5624e2f (brainfuck.tal) Minor cleanup 2021-11-13 10:57:54 -05:00
Devine Lu Linvega 7d74fa95f0 (brainfuck.tal) Replaced byte program with characters 2021-11-13 10:50:21 -05:00
Devine Lu Linvega cd427e5e56 Added brainfuck.tal 2021-11-12 21:51:39 -05:00
Devine Lu Linvega 2d53e60fff (calc.rom) Add keyboard controls 2021-11-12 15:45:06 -05:00
Devine Lu Linvega 7a49c5527f (calc.rom) Added bitwise operators 2021-11-12 15:26:45 -05:00
Devine Lu Linvega 3b6701ba39 (boot.rom)Fixed leak 2021-11-12 13:55:51 -05:00
Devine Lu Linvega c63a8fa882 (snake.rom) Minor optimizations 2021-11-11 09:22:07 -05:00
Devine Lu Linvega 912afb678f (snake.rom) Minor optimizations 2021-11-11 09:10:45 -05:00
Andrew Alderwick d00baaec6a Move clamps to select-file. 2021-11-09 07:14:43 +00:00
Andrew Alderwick 9b061bb9ef Split directory entries into strings on load. 2021-11-09 07:06:19 +00:00
Devine Lu Linvega 198c28b106 (boot.rom) Selection with enter key 2021-11-08 14:02:29 -05:00
Devine Lu Linvega c923e1ddc9 (boot.rom) Added mouse selection 2021-11-08 13:54:21 -05:00
Andrew Alderwick 7f0119599e Check ROM is valid before loading. 2021-11-08 18:31:33 +00:00
Devine Lu Linvega 737a87ac3f Building boot on start 2021-11-08 11:21:23 -05:00
Devine Lu Linvega 85322b92ce Progress toward boot.rom setup 2021-11-08 10:51:09 -05:00
Andrew Alderwick 7d714d5224 Fixed load-rom with new File device. 2021-11-07 21:51:44 +00:00
Devine Lu Linvega e371fddd7a Selection works in the launcher 2021-11-07 16:23:33 -05:00
Devine Lu Linvega 9cc303dd86 Added selection to launcher 2021-11-07 15:55:26 -05:00
Devine Lu Linvega 142d046b9b Merge branch 'main' of git.sr.ht:~rabbits/uxn 2021-11-07 14:31:37 -05:00
Devine Lu Linvega 9851e7f621 Displaying files in launcher 2021-11-07 14:30:36 -05:00
Andrew Alderwick 054361cb70 Replace load/save with read/write 2021-11-07 19:10:38 +00:00
Devine Lu Linvega 8f75ec3801 Resuming work on the launcher 2021-11-06 12:21:14 -04:00
Andrew Alderwick a92dd9fd73 Rearranged File ports for backwards compatibility. 2021-11-06 00:51:43 +00:00
Andrew Alderwick dc3170db98 Implement File/append flag. 2021-11-05 22:48:04 +00:00
Andrew Alderwick c970e2c5ef File device: drop offset shorts, add stat and delete. 2021-11-05 21:32:45 +00:00
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