forked from KolibriOS/kolibrios
Synchronize memmap.inc and const.inc, replace hardcoded numbers with macros.
git-svn-id: svn://kolibrios.org@7122 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -15,7 +15,7 @@ $Revision$
|
||||
|
||||
xor cx, cx
|
||||
mov es, cx
|
||||
mov di, 0x9080
|
||||
mov di, BOOT_BIOS_HD
|
||||
mov byte [es:di-1], cl
|
||||
cmp [preboot_biosdisk], 1
|
||||
jnz bdde
|
||||
@@ -62,7 +62,7 @@ bdds:
|
||||
jb .noide
|
||||
cmp word [es:si+1Ah], 0xFFFF
|
||||
jz .noide
|
||||
inc byte [es:0x907F]
|
||||
inc byte [es:BOOT_BIOS_HD_CNT]
|
||||
mov al, dl
|
||||
stosb
|
||||
push ds
|
||||
@@ -95,7 +95,7 @@ bdds:
|
||||
cmp byte [es:si+2Ah], 'B'
|
||||
jz bddc2
|
||||
.nousb:
|
||||
inc byte [es:0x907F]
|
||||
inc byte [es:BOOT_BIOS_HD_CNT]
|
||||
mov al, dl
|
||||
stosb
|
||||
xor ax, ax
|
||||
|
@@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2009-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2009-2017. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@@ -17,25 +17,25 @@ $Revision$
|
||||
xor ebx, ebx
|
||||
mov es, bx
|
||||
mov ds, bx
|
||||
mov di, 0x9104
|
||||
mov [di-4], ebx ; no blocks yet
|
||||
mov di, BOOT_MEMMAP_BLOCKS
|
||||
mov [BOOT_MEMMAP_BLOCK_CNT], ebx ; no blocks yet
|
||||
mov ecx, 20
|
||||
mov edx, 0x534D4150
|
||||
mov edx, 'PAMS' ; 'SMAP'
|
||||
int 15h
|
||||
jc no_E820
|
||||
cmp eax, 0x534D4150
|
||||
cmp eax, 'PAMS'
|
||||
jnz no_E820
|
||||
e820_mem_loop:
|
||||
; cmp byte [di+16], 1 ; ignore non-free areas
|
||||
; jnz e820_mem_next
|
||||
inc byte [0x9100]
|
||||
add di, 20
|
||||
inc byte [BOOT_MEMMAP_BLOCK_CNT]
|
||||
add di, sizeof.e820entry
|
||||
e820_mem_next:
|
||||
; consequent calls to fn E820
|
||||
test ebx, ebx
|
||||
jz e820_test_done
|
||||
cmp byte [0x9100], 32
|
||||
jae e820_test_done
|
||||
cmp byte [BOOT_MEMMAP_BLOCK_CNT], MAX_MEMMAP_BLOCKS
|
||||
jz e820_test_done
|
||||
mov eax, 0xE820
|
||||
int 15h
|
||||
jc e820_test_done
|
||||
|
@@ -12,7 +12,7 @@
|
||||
$Revision$
|
||||
|
||||
VORTEX86DEBUG = 0 ; For testing in emulators and in non-Vortex86 CPU computers, set this to 1
|
||||
VORTEX86DEBUGVALUE = 0x35504d44 ; FAKE port output = used for testing
|
||||
VORTEX86DEBUGVALUE = 'DMP5' ; FAKE port output = used for testing
|
||||
NORTH_BRIDGE = 0x80000000 ; Base address of Vortex86 PCI North Bridge
|
||||
SOUTH_BRIDGE = 0x80003800 ; Base address of Vortex86 PCI South Bridge
|
||||
|
||||
@@ -155,4 +155,4 @@ end if
|
||||
.nullPCIoutput: ; Emulators and non-Vortex86 CPU computers will usually return \0 in this register
|
||||
DEBUGF 1, "0 (NULL)\n"
|
||||
|
||||
.Vortex86end:
|
||||
.Vortex86end:
|
||||
|
Reference in New Issue
Block a user