Reduce bootloader messages

This commit is contained in:
Jeremy Soller 2016-09-01 20:45:26 -06:00
parent 69faf5f377
commit aad69e8a6c
3 changed files with 25 additions and 96 deletions

View file

@ -20,8 +20,6 @@ boot: ; dl comes with disk
mov bh, 0 mov bh, 0
mov bl, [disk] mov bl, [disk]
call print_num
call print_line
mov ax, (startup_start - boot) / 512 mov ax, (startup_start - boot) / 512
mov bx, startup_start mov bx, startup_start
@ -65,31 +63,28 @@ load:
mov [DAPACK.count], cx mov [DAPACK.count], cx
mov [DAPACK.seg], dx mov [DAPACK.seg], dx
mov si, loading ; mov bx, [DAPACK.addr]
call print ; call print_num
;
mov bx, [DAPACK.addr] ; mov al, '#'
call print_num ; call print_char
;
mov al, '#' ; mov bx, [DAPACK.count]
call print_char ; call print_num
;
mov bx, [DAPACK.count] ; mov al, ' '
call print_num ; call print_char
;
mov al, ' ' ; mov bx, [DAPACK.seg]
call print_char ; call print_num
;
mov bx, [DAPACK.seg] ; mov al, ':'
call print_num ; call print_char
;
mov al, ':' ; mov bx, [DAPACK.buf]
call print_char ; call print_num
;
mov bx, [DAPACK.buf] ; call print_line
call print_num
call print_line
mov dl, [disk] mov dl, [disk]
mov si, DAPACK mov si, DAPACK
@ -109,10 +104,9 @@ error:
%include "print16.asm" %include "print16.asm"
name: db "Redox Loader",0 name: db "Redox Loader - Stage One",0
loading: db "Load ",0
errored: db "Could not read disk",0 errored: db "Could not read disk",0
finished: db "Finished Loading",0 finished: db "Redox Loader - Stage Two",0
line: db 13,10,0 line: db 13,10,0
disk: db 0 disk: db 0

View file

@ -14,7 +14,7 @@ startup:
; buffersize in multiple of sectors (512 Bytes) ; buffersize in multiple of sectors (512 Bytes)
; min 1 ; min 1
; max (0x70000 - startup_end) / 512 ; max (0x70000 - startup_end) / 512
buffer_size_sectors equ 512 buffer_size_sectors equ 64
; buffer size in Bytes ; buffer size in Bytes
buffer_size_bytes equ buffer_size_sectors * 512 buffer_size_bytes equ buffer_size_sectors * 512

View file

@ -13,71 +13,6 @@ vesa:
.edid: .edid:
cmp dword [.required], 0 ;if both required x and required y are set, forget this cmp dword [.required], 0 ;if both required x and required y are set, forget this
jne near .findmode jne near .findmode
mov ax, 0x4F15
mov bx, 1
xor cx, cx
xor dx, dx
mov di, VBEEDID
int 0x10
cmp ax, 0x4F
jne near .noedid
xor di, di
.lp:
xor cx, cx
mov cl, [di+VBEEDID.standardtiming]
shl cx, 3
add cx, 248
push ecx
call decshowrm
mov al, 'x'
call charrm
pop ecx
mov bx, cx
inc di
mov al, [di+VBEEDID.standardtiming]
and al, 11000000b
cmp al, VBEEDID.aspect.4.3
jne .not43
mov ax, 3
mul cx
mov cx, ax
shr cx, 2
jmp .gotres
.not43:
cmp al, VBEEDID.aspect.5.4
jne .not54
shl cx, 2
mov ax, cx
mov cx, 5
xor dx, dx
div cx
mov cx, ax
jmp .gotres
.not54:
cmp al, VBEEDID.aspect.16.10
jne .not1610
mov ax, 10
mul cx
mov cx, ax
shr cx, 4
jmp .gotres
.not1610:
mov ax, 9
mul cx
mov cx, ax
shr cx, 4
.gotres:
call decshowrm
mov si, .edidmsg
call printrm
inc di
cmp di, 8
jb .lp
jmp .findmode
.noedid:
mov si, .noedidmsg
call printrm
jmp .findmode
.resetlist: .resetlist:
;if needed, reset mins/maxes/stuff ;if needed, reset mins/maxes/stuff
xor cx, cx xor cx, cx