Commit Graph

24 Commits

Author SHA1 Message Date
Kartik K. Agaram c5f8415e03 retreat to 640KB 2021-08-29 11:21:09 -07:00
Kartik K. Agaram 0e2a9ad93d build still broken
Now we load all the code, but it overwrites the extended BIOS area.
640KB is no longer enough. Need to rethink loading strategy.
2021-08-29 11:21:09 -07:00
Kartik K. Agaram e2f18e8866 shell: literal images 2021-07-28 23:28:29 -07:00
Kartik K. Agaram 267c74b59a shell: render image from pbm data stream 2021-07-27 22:38:26 -07:00
Kartik K. Agaram 5aea0c11b7 update memory map doc and anticipate a gotcha 2021-07-22 03:58:54 -07:00
Kartik K. Agaram f32caac6df grow code region yet again
We need a cleaner way to do this.
2021-07-05 17:53:57 -07:00
Kartik K. Agaram 8c47da082b fix emulated build
Embarrassingly broken since May 15 (commit ff8ec9bcff).

Thanks Jack Rusher for reporting this.

(fixes #48)
2021-06-18 07:04:36 -07:00
Kartik K. Agaram de013be794 ok, function modal now has full coverage 2021-06-08 18:09:17 -07:00
Kartik K. Agaram 9516dfa0b0 shell: skeleton for scrolling 2021-05-29 17:23:04 -07:00
Kartik K. Agaram c26aef11b7 grow a few buffers until shell/ loads 2021-05-15 07:49:12 -07:00
Kartik K. Agaram 56c9248109 load debug info from disk on abort 2021-05-14 21:51:47 -07:00
Kartik K. Agaram 7205c2465f fixup! load debug info into code disk 2021-05-14 21:29:42 -07:00
Kartik K. Agaram ff8ec9bcff insert a compile phase to emit some debug info 2021-05-14 11:54:42 -07:00
Kartik K. Agaram 97df52bf2f shell: ctrl-r runs on real screen without a trace
We run out of memory fairly early in the course of drawing a chessboard
on the whole screen.
2021-04-17 23:52:52 -07:00
Kartik K. Agaram f774677854 . 2021-04-16 20:26:56 -07:00
Kartik K. Agaram 98feca922e rename boot.hex to boot.subx 2021-03-14 21:41:47 -07:00
Kartik K. Agaram da438fa9f5 treat boot.hex as a SubX file 2021-03-14 21:36:31 -07:00
Kartik K. Agaram 71e4f38129 7842 - new directory organization
Baremetal is now the default build target and therefore has its sources
at the top-level. Baremetal programs build using the phase-2 Mu toolchain
that requires a Linux kernel. This phase-2 codebase which used to be at
the top-level is now under the linux/ directory. Finally, the phase-2 toolchain,
while self-hosting, has a way to bootstrap from a C implementation, which
is now stored in linux/bootstrap. The bootstrap C implementation uses some
literate programming tools that are now in linux/bootstrap/tools.

So the whole thing has gotten inverted. Each directory should build one
artifact and include the main sources (along with standard library). Tools
used for building it are relegated to sub-directories, even though those
tools are often useful in their own right, and have had lots of interesting
programs written using them.

A couple of things have gotten dropped in this process:
  - I had old ways to run on just a Linux kernel, or with a Soso kernel.
    No more.
  - I had some old tooling for running a single test at the cursor. I haven't
    used that lately. Maybe I'll bring it back one day.

The reorg isn't done yet. Still to do:
  - redo documentation everywhere. All the README files, all other markdown,
    particularly vocabulary.md.
  - clean up how-to-run comments at the start of programs everywhere
  - rethink what to do with the html/ directory. Do we even want to keep
    supporting it?

In spite of these shortcomings, all the scripts at the top-level, linux/
and linux/bootstrap are working. The names of the scripts also feel reasonable.
This is a good milestone to take stock at.
2021-03-03 22:21:03 -08:00
Kartik Agaram 880464a7d2 7440 2020-12-28 11:09:31 -08:00
Kartik Agaram dff67029ad 7439 - start translating Mu programs to baremetal 2020-12-28 11:09:30 -08:00
Kartik Agaram 47287fbf1a 7401 - clean up support for non-Linux platforms 2020-12-25 12:28:10 -08:00
Kartik Agaram f4e609c3a7 6401 - have scripts follow the Unix way
Stay silent if all is well.

I don't agree with this, but it's not like the messages I was printing
out were particularly useful.
2020-05-24 22:57:07 -07:00
Kartik Agaram 9e5e87ca37 5865
Give the bootstrap C++ program a less salient name.
2020-01-02 02:01:41 -08:00
Kartik Agaram 23fd294d85 5851
Rename a few scripts to be more consistent.

I'm also starting to feel the urge to bud off `subx run` into its own program,
say tools/emulate_x86. It doesn't really rely on the SubX notation at all.

And then I could rename `subx translate` to `translate_subx_bootstrap`.

Only problem: the commands in the Readme get verbose. But the Readme is
gonna need surgery soon anyway to put translate_mu front and center.
2020-01-01 16:45:30 -08:00