Changeset 76 for trunk/bootcode/airboot.asm
- Timestamp:
- Apr 8, 2017, 12:26:11 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/bootcode/airboot.asm
r72 r76 94 94 ENDIF 95 95 96 ;97 ; If ReleaseCode is not defined, it will produce debug-able code...98 ; Rousseau: This is currently *not* functional so don't use it !99 ; It was used to debug AiR-BOOT as a .COM file.100 ;101 ReleaseCode equ -1102 96 103 97 … … 133 127 ; ----------------------------------------------------------------------------- 134 128 ; Address labels after code-move 135 BootBaseSeg equ 08000h 136 BootBasePtr equ 0h 129 BootBaseSeg equ 08000h ; Pre-boot, in the low 640K 130 BootBasePtr equ 0h ; We put our MBR to this location 137 131 BootBaseExec equ BootBasePtr+offset MBR_RealStart 138 StackSeg equ 07000h ; Put the stack below the code 139 140 ; Use different addresses depending on whether in pre-boot 141 ; or debug (dos) environment. 142 IFDEF ReleaseCode 143 StartBaseSeg equ 00000h ; Pre-boot, we are in low memory 144 StartBasePtr equ 07C00h ; BIOS starts our MBR at 0:7C00 145 ELSE 146 ; Rousseau: where does this value come from ? 147 ; Should be CS. 148 ; Rectified in actual code by ignoring this value. 149 StartBaseSeg equ 03A98h ; Adjust to DOS segment 150 StartBasePtr equ 00100h ; We are a .COM file, DOS is active 151 ENDIF 132 StackSeg equ 07000h ; Put the stack below the code 133 StartBaseSeg equ 00000h ; Pre-boot, we are in low memory 134 StartBasePtr equ 07C00h ; BIOS starts our MBR at 0:7C00 152 135 153 136 … … 546 529 ;sti 547 530 548 ; Depending on pre-boot or debug. 549 ; Note that ReleaseCode is obsolete, so we will always move 550 ; 256 words; aka this sector, the MBR. 551 IFDEF ReleaseCode 531 ; Size of the MBR in words. 552 532 mov cx, 256 ; Pre-boot environment 553 ELSE554 mov cx, 32700 ; Old Debug environment (move ~64kB)555 ENDIF556 533 557 534 ; … … 732 709 push bx ; Old SP 733 710 734 735 ; If we are in debug-mode, all code is moved already,736 ; so we can directly jump to it.737 ; One difference is that in debug-mode, the whole .com image is738 ; loaded by dos while when air-boot is active from the MBR it739 ; does the loading itself.740 ; (This debug environment is obsolete and dis-fuctional)741 IFNDEF ReleaseCode742 jmp AiR_BOOT_Start743 ENDIF744 711 745 712 ; Load the configuration-sectors from disk. … … 1428 1395 call PASSWORD_AskChangeBootPwd 1429 1396 1430 IFNDEF ReleaseCode1431 ; Debug Code to terminate DOS .COM program - used for1432 ; testing AiR-BOOT1433 ; Obsolete.1434 int 31435 mov ax, 6200h1436 int 21h1437 mov es, bx1438 mov ax, 4C00h ; Quit program1439 int 21h1440 ENDIF1441 1397 call ANTIVIR_SaveBackUpMBR 1442 1398
Note:
See TracChangeset
for help on using the changeset viewer.