Kartik K. Agaram
ff8ec9bcff
insert a compile phase to emit some debug info
2021-05-14 11:54:42 -07:00
Kartik K. Agaram
2df1d1a730
.
2021-05-14 09:06:06 -07:00
Kartik K. Agaram
63a9263aff
.
...
Fix a stack bug in survey_baremetal. I'm not sure how my tests weren't
crashing, but I won't bother digging further.
2021-05-14 08:09:04 -07:00
Kartik K. Agaram
a42f4613f7
.
2021-05-14 08:05:24 -07:00
Kartik K. Agaram
9b37c03de9
.
2021-05-14 07:59:32 -07:00
Kartik Agaram
c7ade29c69
.
...
Keep the html version of mandelbrot-fixed at the correct monochrome
still image for now. (commit 4bfc80ce
)
2021-05-09 23:18:10 -07:00
Kartik K. Agaram
208dab2256
mandelbrot: add some garish color
2021-05-09 22:14:42 -07:00
Kartik K. Agaram
cf8ccb0a09
similarly zoom into fixed and fp mandelbrot
2021-05-09 22:00:40 -07:00
Kartik K. Agaram
0b56b7b4d9
mandelbrot-fixed: introduce some viewport parameters
2021-05-09 21:01:16 -07:00
Kartik K. Agaram
4bfc80ce9a
bugfix in mandelbrot-fixed
...
Thanks to comparing regular ints with fixed-point ints, I was computing
iterations for many screenfuls of pixels to the right of the current one.
(Y-axis behaved similarly, but there it was just doing other work instead
of busy-looping forever. If you don't have anything else to do, it doesn't
matter what you do.)
2021-05-09 17:40:14 -07:00
Kartik K. Agaram
cd6412129f
.
...
Yet another step in the slow divergence of survey_baremetal from its survey_elf
roots.
2021-05-09 13:21:08 -07:00
Kartik Agaram
1b9ddcefb9
.
2021-05-09 12:59:48 -07:00
Kartik Agaram
96b6d623a6
.
2021-05-09 09:46:46 -07:00
Kartik Agaram
d91595e31c
.
2021-05-09 09:40:26 -07:00
Kartik Agaram
0bcdd074a8
.
2021-05-09 08:39:30 -07:00
Kartik Agaram
2e6065717d
.
2021-05-09 08:36:37 -07:00
Kartik Agaram
9ad9bf96bb
mandelbrot: streamline exposition
2021-05-09 08:15:59 -07:00
Kartik Agaram
b1eeb62123
.
2021-05-09 07:45:04 -07:00
Kartik Agaram
46f7e4fff3
.
2021-05-08 23:53:28 -07:00
Kartik K. Agaram
b94e1fec30
mandelbrot set in fixed-point
2021-05-08 23:46:36 -07:00
Kartik K. Agaram
14b7162bd6
.
2021-05-08 22:24:33 -07:00
Kartik K. Agaram
f9f419af71
support checking overflow flag everywhere
2021-05-08 21:49:50 -07:00
Kartik K. Agaram
df68e6eddc
.
2021-05-08 15:46:26 -07:00
Kartik K. Agaram
1b769b4b68
initial, monochrome mandelbrot set
2021-05-08 10:11:37 -07:00
Kartik K. Agaram
183010779c
A 'bowboard', a chessboard of rainbow circles
...
Compare with (chessboard screen 256)
2021-05-08 08:33:22 -07:00
Kartik K. Agaram
665b1e8f07
a full-circle rainbow
2021-05-08 07:58:56 -07:00
Kartik K. Agaram
1adc904ef3
new shell macro: do
2021-05-07 21:13:24 -07:00
Kartik K. Agaram
888b4cd8ea
always check for null in 'index' instructions
2021-05-07 21:04:45 -07:00
Kartik K. Agaram
61a68452ae
all apps working again after null get check
2021-05-07 20:40:42 -07:00
Kartik K. Agaram
19dd573a92
.
2021-05-07 20:02:01 -07:00
Kartik K. Agaram
e74050ade4
always check for null in 'get' instructions
2021-05-07 18:25:43 -07:00
Kartik K. Agaram
540fd66473
a little bit more information when lookup fails
...
Basically this should never, ever happen until I start reclaiming heap
memory. I believe the only reason it happens is unprotected writes to address
0 or thereabouts.
2021-05-07 15:28:17 -07:00
Kartik K. Agaram
d3f17627d8
an often-overflowing stream when running brcircle
...
We really need to systematically check our trace streams.
2021-05-07 15:12:56 -07:00
Kartik K. Agaram
c5f50f05b7
.
2021-05-07 12:46:41 -07:00
Kartik K. Agaram
150db8d56a
some boot-time heartbeat messages
...
This will help us with some common debug scenarios.
2021-05-07 12:27:20 -07:00
Kartik K. Agaram
dd192dd52c
.
2021-05-07 12:11:59 -07:00
Kartik K. Agaram
e42ae8219e
clean up all definitions
2021-05-07 12:08:07 -07:00
Kartik K. Agaram
d605ba1f9a
clean up chessboard
...
We still benefit from some helpers here because of the unrolling and multiple
calls to helpers.
2021-05-07 11:56:43 -07:00
Kartik K. Agaram
d8298d1a2a
clean up read_line
2021-05-07 11:37:48 -07:00
Kartik K. Agaram
91f76e6b22
clean up Bresenham line-drawing
2021-05-07 11:28:59 -07:00
Kartik K. Agaram
25eb9c580e
.
2021-05-07 11:02:55 -07:00
Kartik K. Agaram
92fb55d50f
no, we need hline1 for fill_rect
2021-05-07 10:14:51 -07:00
Kartik K. Agaram
c651bbeffc
clean up hline and vline
2021-05-07 10:05:20 -07:00
Kartik K. Agaram
74be534e2b
starting to implement first macros
...
Another commit, another bugfix.
Some snippets from my currently exploding todo list:
- always investigate lookup errors immediately. Beyond the root cause, they should never happen at the moment, while we aren't reclaiming memory.
we should always return a more precise error message. Usually involving null pointer checks.
- on abort, print out stack trace
- emit mapping of labels to addresses during survey
- store a mapping of symbols somewhere in the code image
- stop allocating 1KB per token; expand space for tokens as needed
2021-05-07 09:49:16 -07:00
Kartik K. Agaram
7105b73fd3
give up on nested backquotes for now
2021-05-07 09:22:54 -07:00
Kartik K. Agaram
f791cd9da9
macros almost done
...
Just one case left: macros within unquote.
2021-05-06 22:09:30 -07:00
Kartik K. Agaram
57fd40d500
some more cases
2021-05-06 21:41:03 -07:00
Kartik K. Agaram
a1cfadc749
first passing test for macroexpand
...
In the process I spent a long time tracking down a stray TODO in 108write.subx
that I thought would abort but didn't since the switch to baremetal.
Then after I reintroduced that assertion I had to go track down a bunch
of buffer sizes. Stream sizes continue to be a huge mess.
2021-05-06 21:38:02 -07:00
Kartik K. Agaram
f882130c86
.
2021-05-06 20:02:18 -07:00
Kartik K. Agaram
7c8ad5a419
more paranoia in shell/globals.mu
2021-05-06 19:38:54 -07:00