about summary refs log tree commit diff stats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* 7846Kartik K. Agaram2021-03-041-4/+6
|
* 7842 - new directory organizationKartik K. Agaram2021-03-03104-33908/+462
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* 7746Kartik Agaram2021-02-141-3/+2
|
* 7745Kartik Agaram2021-02-141-0/+9
|
* 7688Kartik Agaram2021-02-061-1/+1
|
* 7476Kartik Agaram2020-12-301-1/+1
|
* 7472Kartik Agaram2020-12-291-0/+9
|
* 7464Kartik Agaram2020-12-291-0/+9
|
* 7426Kartik Agaram2020-12-271-41/+41
|
* 7405Kartik Agaram2020-12-261-36/+45
|
* 7252Kartik Agaram2020-11-161-1/+1
|
* 7236Kartik Agaram2020-11-141-1/+1
|
* 7233 - fix some warnings from gcc 9Kartik Agaram2020-11-131-3/+3
| | | | | | Make strncpy a little less error-prone. Just use memcpy where that suffices: https://stackoverflow.com/questions/56782248/gcc-specified-bound-depends-on-the-length-of-the-source-argument/56782476#56782476
* 6774Kartik Agaram2020-09-111-0/+11
|
* 6674Kartik Agaram2020-07-251-5/+5
|
* 6631Kartik Agaram2020-07-111-4/+4
|
* 6617Kartik Agaram2020-07-051-7/+5
|
* 6610 - tweak the Linux boot image generatorKartik Agaram2020-07-051-8/+6
| | | | | So far we hardcoded the translation process and it only supported SubX. Now we pass in an ELF binary and outsource how it's generated.
* -Kartik Agaram2020-05-182-17/+20
|
* mu.subx: make handles in Primitives easier to readKartik Agaram2020-05-181-0/+17
|
* 6207 - tweaks while creating a videoKartik Agaram2020-04-191-3/+3
| | | | https://futureofcoding.org/two-minute-week
* 6123 - runtime helper for initializing arraysKartik Agaram2020-03-111-0/+636
| | | | | | | | | | | | | I built this in 3 phases: a) create a helper in the bootstrap VM to render the state of the stack. b) interactively arrive at the right function (tools/stack_array.subx) c) pull the final solution into the standard library (093stack_allocate.subx) As the final layer says, this may not be the fastest approach for most (or indeed any) Mu programs. Perhaps it's better on balance for the compiler to just emit n/4 `push` instructions. (I'm sure this solution can be optimized further.)
* 6003Kartik Agaram2020-02-091-4/+15
|
* 6002Kartik Agaram2020-02-091-3/+4
|
* 5910Kartik Agaram2020-01-201-2/+1
| | | | | Trace browser: Don't let the background color get too light, and cycle back to darker shades so I'm not squinting at low depths.
* 5900Kartik Agaram2020-01-191-0/+16
|
* 5899Kartik Agaram2020-01-192-4/+11
|
* 5897 - rename comparison instructionsKartik Agaram2020-01-161-16/+0
| | | | | | | Signed and unsigned don't quite capture the essence of what the different combinations of x86 flags are doing for SubX. The crucial distinction is that one set of comparison operators is for integers and the second is for addresses.
* 5891Kartik Agaram2020-01-141-0/+20
|
* 5884Kartik Agaram2020-01-121-0/+7
|
* 5881Kartik Agaram2020-01-101-7/+0
|
* 5875Kartik Agaram2020-01-021-7/+7
|
* 5870Kartik Agaram2020-01-021-0/+3
|
* 5868Kartik Agaram2020-01-021-0/+0
| | | | | Follow stupid GNU convention, because why not: https://www.gnu.org/prep/standards/html_node/Releases.html
* 5859Kartik Agaram2020-01-012-0/+67
| | | | Move script to create a Linux-based boot image into a sub-directory.
* 5858Kartik Agaram2020-01-0195-0/+32627
| | | | | | Move script to create a Soso boot image into a sub-directory. I'm trying to streamline newcomer attention to just a couple of use cases.
* 5837 - better colors for trace browserKartik Agaram2019-12-281-10/+25
|
* 5819Kartik Agaram2019-12-221-1/+1
| | | | Minor tweaks to stop wasting horizontal space in the trace.
* 5816 - browse_trace bug fixedKartik Agaram2019-12-211-0/+1
|
* 5815Kartik Agaram2019-12-211-4/+4
|
* 5814Kartik Agaram2019-12-211-25/+25
|
* 5813Kartik Agaram2019-12-211-2/+1
|
* 5812 - debugging an ancient niggle in browse_traceKartik Agaram2019-12-211-6/+5
| | | | | | | | The problem: when I hit 'G' to go to the bottom of the trace, if the bottom is visible on screen, the screen scrolls so the bottom of the trace is the bottom-most line on screen. But the cursor moves to where the trace used to end rather than the new location of the bottom of the trace (the bottom of the screen).
* 5805Kartik Agaram2019-12-081-0/+12
|
* 5801 - move `tangle` to `tools/` dirKartik Agaram2019-12-072-0/+1189
|
* 5800 - move `browse_trace` to `tools/` dirKartik Agaram2019-12-0712-0/+1927
|
* 5799 - move html-generation to `tools/` directoryKartik Agaram2019-12-073-1/+344
|
* 5797 - move `enumerate/` to `tools/` directoryKartik Agaram2019-12-072-0/+34
|
* 5796 - move treeshake to a new tools/ directoryKartik Agaram2019-12-075-0/+239