diff --git a/Makefile b/Makefile index 73f0587..e2c02a1 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ MACHINE = mac99 PPC = powerpc-eabi QEMU = qemu-system-ppc RES = 1600x900x32 - +CPU = g4 SOURCES_C = $(shell find src -name "*.c") SOURCES_S = $(shell find src -name "*.s") OBJECTS = $(SOURCES_C:.c=.elf) $(SOURCES_S:.s=.elf) @@ -40,7 +40,9 @@ clean: find src -name "*.elf" -type f -delete run: - $(QEMU) -hda *.APM -g $(RES) -machine $(MACHINE) + $(QEMU) -hda *.APM -g $(RES) -machine $(MACHINE) -cpu $(CPU) debug: - $(QEMU) -hda *.APM -d in_asm -g $(RES) -machine $(MACHINE) + $(QEMU) -hda *.APM -d in_asm -g $(RES) -machine $(MACHINE) -cpu $(CPU) +gdb: + $(QEMU) -hda *.APM -s -S -g $(RES) -machine $(MACHINE) -cpu $(CPU) diff --git a/loader/def.fth b/loader/def.fth index 7d2fc2c..e27f591 100644 --- a/loader/def.fth +++ b/loader/def.fth @@ -3,7 +3,7 @@ : inf dup sup 1 + ; : diff = if 0 else -1 then ; : fba frame-buffer-adr ; -: beige-vram 80000000 ; : mac99-vram 81000000 ; +: beige-fba 80000000 ; : mac99-fba 81000000 ; : hardware-error ." Hardware not supported." cr ; : beige-message ." Beige hardware detected" cr ; : mac99-message ." mac99 hardware detected" cr ; diff --git a/loader/load.fth b/loader/load.fth index 5af7f50..f794bb3 100644 --- a/loader/load.fth +++ b/loader/load.fth @@ -1,12 +1,12 @@ initmsg -fba beige-vram = if beige-message beige-magic-number beige-vram c! then -fba mac99-vram = if mac99-message mac99-magic-number mac99-vram c! then -fba beige-vram = if screen-width 4 beige-vram + l! then -fba beige-vram = if screen-height 8 beige-vram + l! then -fba mac99-vram = if screen-width 4 mac99-vram + l! then -fba mac99-vram = if screen-height 8 mac99-vram + l! then +fba beige-fba = if beige-message beige-magic-number beige-fba c! then +fba mac99-fba = if mac99-message mac99-magic-number mac99-fba c! then +fba beige-fba = if screen-width 4 beige-fba + l! then +fba beige-fba = if screen-height 8 beige-fba + l! then +fba mac99-fba = if screen-width 4 mac99-fba + l! then +fba mac99-fba = if screen-height 8 mac99-fba + l! then variable run -1 run ! -fba beige-vram diff fba mac99-vram diff and if hardware-error 0 run ! then +fba beige-fba diff fba mac99-fba diff and if hardware-error 0 run ! then run @ 0 = if 1 0 do 0 +loop then boot hd:,\boot\kernel.elf diff --git a/src/entry/boot.c b/src/entry/boot.c index 33d9f26..ab7fcb4 100644 --- a/src/entry/boot.c +++ b/src/entry/boot.c @@ -13,6 +13,7 @@ void __eabi(void) //void* ofw_interpret(char* cmd, int32_t* stack_args, int n_stack_args, int n_ret_args, int32_t* reta void main(void) { + ofw_interpret("show-devs", 0, 0, 0, 0); puts("Press any key to continue", 25); ofw_interpret("blink-screen", 0, 0, 0, 0); ofw_interpret("key", 0, 0, 1, (int32_t*)0x03020000);