Skip to content

Commit 95358ff

Browse files
Now, transient system load with notifications
1 parent fe58ffb commit 95358ff

File tree

16 files changed

+3972
-37
lines changed

16 files changed

+3972
-37
lines changed

Makefile

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,32 @@
11
ASM = nasm
22
LD = ld
33

4+
ifndef FORCE_STEP_MODE
5+
FORCE_STEP_MODE = 0 # Step mode (prompteo durante boot) por defecto deshabilita\
6+
# do salvo que sea forzado en la invocacion del makefile.
7+
endif
8+
49
UEFI_SRC = uefi.asm
510
UEFI_OBJ = $(UEFI_SRC:.asm=.o)
611
UEFI_SYS = $(UEFI_SRC:.asm=.sys)
712

8-
BOOTLOADER = bootloader.sys
13+
TSL_SYS = tsl.sys
914

10-
all: uefi.sys bootloader.sys
15+
all: uefi.sys tsl.sys
1116

1217

1318
$(UEFI_SYS): build
1419
$(ASM) -g -F DWARF -f elf64 ./asm/lib/lib.asm -o ./obj/lib.o
1520
$(ASM) -g -F DWARF -f elf64 ./asm/lib/lib_efi.asm -o ./obj/lib_efi.o
16-
$(ASM) -g -F DWARF -f elf64 ./asm/boot/uefi.asm -o ./obj/uefi.o
21+
$(ASM) -D STEP_MODE_INIT_VAL=$(FORCE_STEP_MODE) -g -F DWARF -f elf64 ./asm/uefi.asm -o ./obj/uefi.o
1722
# $(LD) -T uefi.ld -o ./build/$(UEFI_SYS) ./obj/uefi.o
1823
# $(LD) --oformat=elf64-x86-64 -T uefi.ld -o ./obj/uefi.elf ./obj/uefi.o
1924
$(LD) -T uefi.ld -o ./build/$(UEFI_SYS) ./obj/uefi.o ./obj/lib.o ./obj/lib_efi.o
2025
$(LD) --oformat=elf64-x86-64 -T uefi.ld -o ./obj/uefi.elf ./obj/uefi.o ./obj/lib.o ./obj/lib_efi.o
2126

22-
$(BOOTLOADER): $(UEFI)
23-
$(ASM) ./asm/bootloader.asm -o ./build/$(BOOTLOADER)
27+
$(TSL_SYS): $(UEFI_SYS)
28+
$(ASM) ./asm/tsl.asm -o ./build/$(TSL_SYS)
29+
2430

2531
build:
2632
mkdir build img out obj

asm/interrupts.asm

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
; Default exception handler
88
exception_gate:
99
exception_gate_halt:
10+
11+
;;mov r9, msg_exception_occurred
12+
;;call print
13+
1014
cli ; Disable interrupts
1115
hlt ; Halt the system
1216
jmp exception_gate_halt

asm/lib/lib.asm

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,14 +230,14 @@ print:
230230
mov rdx, 0 ;; rdx:rax = 0:rax
231231
sub rax, [FB]
232232
mov rbx, [PPSL]
233-
and rdi, 0x0000FFFF ;; No necesario durante efi, si en 2do loader.
233+
and rbx, 0x0000FFFF ;; No necesario durante efi, si en 2do loader.
234234
lea rbx, [4 * rbx] ;; 4b/px * ppsl
235235
div rbx ;; rdx = offset desde comienzo de linea.
236236

237237
sub [rsp], rdx ;; Carriage return.
238238

239239
mov rbx, [PPSL]
240-
and rdi, 0x0000FFFF ;; No necesario durante efi, si en 2do loader.
240+
and rbx, 0x0000FFFF ;; No necesario durante efi, si en 2do loader.
241241

242242
mov rax, 4 * 16 ;; Bajar 16px.
243243
mov rdx, 0
@@ -407,8 +407,9 @@ print_cursor dq 0 ;; El cursor es tan solo puntero a framebuffer.
407407
volatile_placeholder:
408408
times 64 dw 0x0000
409409

410-
msg_test8: db "Test", 0
411-
410+
;;TODO: cuando genere la fuente, le recorte la linea inferior... o sea, por ejem
411+
;; plo la letra g miniscula, tiene un chiquito recortada la curvatura inferior.
412+
;; Regenerar la fuente.
412413

413414
font_height equ 16
414415
font_data:

asm/sysvar.asm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
;;==============================================================================
2-
;; System Variables
2+
;; System Variables | @file /asm/sysvar.asm
33
;;==============================================================================
44

55

0 commit comments

Comments
 (0)