Commit Graph

640 Commits

Author SHA1 Message Date
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
Andrew Alderwick 696958a413 Added keep mode optimizations to asma 2021-05-13 22:51:36 +01:00
neauoire 8845a326d8 Fixed hello world 2021-05-13 08:47:18 -07:00
Andrew Alderwick bceed46348 Optimised #0000 NEQ2 when used with JCN 2021-05-13 07:36:24 +01:00
Andrew Alderwick f407f1b426 Optimized out #00 NEQ when used with JCN 2021-05-13 09:02:32 +01:00
Andrew Alderwick 3109ca3bdd Added keep mode parsing to asma 2021-05-13 08:02:15 +01:00
Andrew Alderwick be9ae6ea1b Imported new opcode names to asma 2021-05-13 08:02:15 +01:00
neauoire a4c8066043 Cleaned example files 2021-05-12 18:28:45 -07:00
neauoire 9164b7f9fe Reverted patch to sft16 2021-05-12 12:13:28 -07:00
neauoire 0c188ef3fa Minor optimizations to the examples 2021-05-12 12:08:51 -07:00
neauoire 514b2f7f58 Minor optimizations to demos 2021-05-12 11:58:31 -07:00
neauoire 4bac8e9e30 Fixed leak in piano 2021-05-12 11:44:18 -07:00
Andrew Alderwick fd9612d656 Implemented keep opcode flag 2021-05-12 18:42:24 +01:00
neauoire 77b9f54738 Removed nasu from project 2021-05-11 20:30:03 -07:00
neauoire 7f5c4e25e4 Moved devices in their own folders 2021-05-11 11:42:12 -07:00
neauoire a206ed0b10 Renamed PEK/POK to LDZ/STZ 2021-05-11 11:14:52 -07:00
neauoire 8630028e97 JNZ is now JCN 2021-05-11 11:12:07 -07:00
Andrew Alderwick d360fa43b2 Added darena, contributed by chirrolafupa, thank you! 2021-05-11 08:50:35 +01:00
neauoire 5dbfb6603e Progress on nasu redesign 2021-05-10 20:52:57 -07:00
neauoire 1925897c51 Progress on nasu revamp 2021-05-09 20:43:33 -07:00
neauoire cd70ab1f18 Progress on preview in nasu 2021-05-09 14:10:07 -07:00