Commit Graph

600 Commits

Author SHA1 Message Date
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