0
0
Fork 0
mirror of https://git.sr.ht/~rabbits/uxn synced 2024-11-01 03:52:39 +00:00
Commit graph

727 commits

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