about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* 7387Kartik Agaram2020-12-231-3/+4
| | | | | | Redo commit 7381. There was a bug. Current state: commit 7381 excluding 7376.
* 7386Kartik Agaram2020-12-231-2/+3
| | | | Commit 7380 excluding 7376.
* 7385Kartik Agaram2020-12-231-6/+6
| | | | Commit 7379 excluding 7376.
* 7384Kartik Agaram2020-12-231-4/+23
| | | | | Currently at commit 7378 (reset the A20 address line) except without 7376 (enabling interrupts).
* 7383Kartik Agaram2020-12-231-101/+36
| | | | | Currently at commit 7377 except without 7376 (enabling interrupts). Works as advertised.
* 7382 - snapshotKartik Agaram2020-12-231-21/+62
| | | | | Turns out I've been "testing" with a stale file since commit 7373. We need to go over everything since then.
* 7381Kartik Agaram2020-12-231-3/+3
|
* 7380Kartik Agaram2020-12-231-2/+3
|
* 7379Kartik Agaram2020-12-231-6/+6
|
* 7378Kartik Agaram2020-12-231-4/+23
| | | | | | | | Turns out we only had access to 50% of RAM so far. Closing my nose and moving right along.. Though this _does_ give me practice interacting with ports. That'll be handy for the keyboard.
* 7377Kartik Agaram2020-12-231-5/+5
| | | | | | | Ooh, look at that, the device number comes conveniently initialized in the right register. No need to hardcode it. https://wiki.osdev.org/MBR_(x86)
* 7376Kartik Agaram2020-12-231-3/+7
|
* 7375Kartik Agaram2020-12-231-9/+20
| | | | A little more robustness after reading https://stackoverflow.com/questions/43786251/int-13h-42h-doesnt-load-anything-in-bochs/43787939#43787939
* 7374Kartik Agaram2020-12-211-3/+16
|
* 7373Kartik Agaram2020-12-211-1/+1
| | | | | apps/boot.hex doesn't need much by way of syntax highlighting. Have it work even for people who haven't installed subx.vim
* 7372 - successful read from disk using BIOSKartik Agaram2020-12-211-13/+48
|
* 7371Kartik Agaram2020-12-211-1/+1
|
* 7370Kartik Agaram2020-12-212-7/+8
| | | | Use a more realistically sized disk image. Now we can read the second sector.
* 7369 - read hard disk using BIOSKartik Agaram2020-12-202-8/+2
| | | | | | There were two problems: a) We have only 1 sector per track (spt=1), so 'second sector' is meaningless. b) Drives 0-127 are reserved for floppies.
* 7368 - ooh, int 13h works with a floppyKartik Agaram2020-12-201-0/+6
| | | | | Lots of great tips here: https://stackoverflow.com/questions/43786251/int-13h-42h-doesnt-load-anything-in-bochs/43787939#43787939
* 7367 - start of boot sector for Mu computerKartik Agaram2020-12-202-0/+191
| | | | | Not working yet. Reading sectors from disk returns an error (sets carry flag).
* 7366Kartik Agaram2020-12-201-22/+24
| | | | | | Move more padding around. Reading a sector from disk requires about 24 bytes of code.
* 7365Kartik Agaram2020-12-201-4/+4
|
* 7364Kartik Agaram2020-12-201-11/+12
|
* 7363Kartik Agaram2020-12-201-1/+1
| | | | | Kinda brutal way to lose the bochs warning. Should suffice for now. As we add more code we'll introduce more sectors.
* 7362Kartik Agaram2020-12-201-2/+2
| | | | | I hadn't noticed that bochs was getting into a reset loop after executing my code correctly. Fix that.
* 7361Kartik Agaram2020-12-201-2/+2
| | | | | Switch bochs from floppy to hard disk. Bochs throws a new warning, but otherwise 32bit.hex continues to work.
* 7360Kartik Agaram2020-12-201-13/+21
| | | | | Insert padding in a few places so we don't have to recalculate addresses quite so much.
* 7359 - boot into 32-bit modeKartik Agaram2020-12-201-6/+6
|
* 7358Kartik Agaram2020-12-202-0/+208
| | | | | | | Snapshot: first draft of a boot image that switches to 32-bit mode as quickly as possible (~70 bytes) Doesn't work yet. Gets stuck in an infinite reset loop.
* 7357Kartik Agaram2020-12-191-74/+65
|
* 7356Kartik Agaram2020-12-195-121/+115
|
* 7355 - learning to boot into 32-bit modeKartik Agaram2020-12-1910-0/+351
| | | | | | These exercises are from the incomplete "Writing a simple operating system from scratch" by Nick Blundell. https://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf
* 7354 - tile: stop trying to center menuKartik Agaram2020-12-141-15/+7
|
* 7353Kartik Agaram2020-12-141-1/+1
|
* 7352Kartik Agaram2020-12-143-37/+15
|
* 7351Kartik Agaram2020-12-141-1/+1
|
* 7350 - mu.subx optimization: skip no-op copiesKartik Agaram2020-12-112-0/+141
|
* 7349Kartik Agaram2020-12-111-12/+12
|
* 7348 - mu.subx bug with string literalsKartik Agaram2020-12-112-0/+63
|
* 7347 - tile: separate sandbox and function menusKartik Agaram2020-12-061-0/+38
|
* 7346Kartik Agaram2020-12-061-2/+25
|
* 7345Kartik Agaram2020-12-061-14/+14
|
* 7344Kartik Agaram2020-12-061-3/+15
|
* 7343Kartik Agaram2020-12-061-5/+4
|
* 7342 - tile: hotkeys for ending function editKartik Agaram2020-12-061-0/+20
|
* 7341 - tile: function editing doneKartik Agaram2020-12-062-22/+6
| | | | | A tiny modicum of reuse amidst all this copypasta: I'm able to reuse the same function that renders lines without stacks in the sandbox.
* 7340 - tile: function editing almost doneKartik Agaram2020-12-062-4/+215
| | | | | Still a bug in cursor positioning. It's always shown at the start of the function body.
* 7339 - tile: position cursor in correct functionKartik Agaram2020-12-062-8/+77
| | | | Still can't edit functions, but we're getting there.
* 7338 - tile: architecture starting to crystallizeKartik Agaram2020-12-052-21/+54
| | | | | | | | | In particular, I'm starting to have opinions about how to scalably position the cursor at the end of each frame. One advantage of text mode without a pointer device (mouse/trackpad): only one cursor to track. UI can't be modified anywhere. That simplifies any reactive UI framework.