This commit is contained in:
Kartik K. Agaram 2021-03-28 08:34:44 -07:00
parent cfe4fea124
commit 18ef136b2c
1 changed files with 6 additions and 6 deletions

View File

@ -1,11 +1,11 @@
# Experimental Mu shell
# A Lisp with indent-sensitivity and infix, no macros. Commas are ignored.
fn main screen: (addr screen), keyboard: (addr keyboard) {
fn main screen: (addr screen), keyboard: (addr keyboard), data-disk: (addr disk) {
var sandbox-storage: sandbox
var sandbox/esi: (addr sandbox) <- address sandbox-storage
initialize-sandbox sandbox
load-sandbox-from-secondary-disk sandbox
load-sandbox data-disk, sandbox
var width/eax: int <- copy 0
var height/ecx: int <- copy 0
width, height <- screen-size screen
@ -22,13 +22,13 @@ fn main screen: (addr screen), keyboard: (addr keyboard) {
}
}
# Read a null-terminated sequence of keys from secondary disk and load them
# into sandbox.
fn load-sandbox-from-secondary-disk _self: (addr sandbox) {
# Read a null-terminated sequence of keys from disk and load them into
# sandbox.
fn load-sandbox data-disk: (addr disk), _self: (addr sandbox) {
var self/esi: (addr sandbox) <- copy _self
var s-storage: (stream byte 0x200)
var s/ebx: (addr stream byte) <- address s-storage
load-first-sector-from-primary-bus-secondary-drive s
load-sector data-disk, 0/lba, s
{
var done?/eax: boolean <- stream-empty? s
compare done?, 0/false