site logo  BootableJFSLVM

HomePage | Categories |* BLOG *| RecentChanges | RecentlyCommented | Login/Register

Revision [1186]

Last edited on 2008-05-27 16:08:08 by MikeGreene
Additions:
**[[BootOs2Ldr os2ldr Entry Values]]**


Revision [1132]

Edited on 2008-05-25 19:06:08 by MikeGreene
Additions:
**[[BootableJFSLVM LVM MBR Disassembled]]**
Deletions:
**[[LVM MBR Disassembled ]]**


Revision [1131]

Edited on 2008-05-25 19:05:20 by MikeGreene
Additions:
**[[LVM MBR Disassembled ]]**
**[[BootableJFSPartition Bootable JFS Partition Bootsector]]**
**[[BootableJFSLoad The micro-FSD]]**
Deletions:
**[[BootableJFSPartition Boot Partition]]**
**[[BootableJFSLoad The micro-FSD]]**


Revision [1130]

Edited on 2008-05-25 19:04:00 by MikeGreene
Additions:
**[[BootableJFSLoad The micro-FSD]]**


Revision [1125]

Edited on 2008-05-25 12:42:55 by MikeGreene
Additions:
mov si, 7C00h ; Copy from here...
mov di, 7E00h ; copy to here: 0000:7E00
After the code is moved from 0000:7C00 to 0000:7E00 the entry point is 0000:7E20.
Deletions:
mov si, 7C00h ; Source Index: Copy from here...
mov di, 7E00h ; Destination Index: Copy to here: 0000:7E00


Revision [1047]

Edited on 2008-05-17 07:25:32 by MikeGreene
Additions:
pop si ; seems to hold MBR pointer
pop dx ; boot drive number
Deletions:
pop si
pop dx


Revision [1044]

Edited on 2008-05-17 06:37:30 by MikeGreene
Additions:
**[[BootableJFS Top Page]]**
**[[BootableJFSPartition Boot Partition]]**
Deletions:
[[BootableJFS Top Page]]
[[BootableJFSPartition Boot Partition]]


Revision [1043]

Edited on 2008-05-17 06:37:02 by MikeGreene
Additions:
[[BootableJFSPartition Boot Partition]]
Deletions:
[[BootableJFSLVM xxx]]


Revision [1042]

Edited on 2008-05-17 06:35:50 by MikeGreene
Additions:
>>
[[BootableJFS Top Page]]
[[BootableJFSLVM xxx]]
Deletions:
>>Shit


Revision [1041]

Edited on 2008-05-17 06:34:32 by MikeGreene
Additions:
>>Shit
<<===LVM MBR Disassembled===
Deletions:
===LVM MBR Disassembled===


Revision [1040]

Edited on 2008-05-17 06:33:31 by MikeGreene [Done as much as I require.]
Additions:
The partition boot information is loaded at 7C00 and execution is continued.


Revision [1038]

Edited on 2008-05-17 06:29:14 by MikeGreene
Additions:
Loaded at 7C00h, setup stack and copy block from 7C00 to 7E00h. Push 7E20h on the stack and return near which will begin execution at 7E20h. This is the initial code loaded at 07C0:0000 and the disassembled code relocated at 07E0:0000 continues below.
After relocation the entry is at 7E20, I left out the 7E00 to 7E1F code which is not used. I am really only interested in the basic follow and the loaded and follow-on module, so some of the commenting could be better. In general, a Boot Manager partition is looked for and a simple consistency check is done on the MBR.
If you see below a check is made to verify INT 13 Extensions API support (see CheckINT13Ext). The result is stored at 3000:0000, if supported 58333149h is stored if not 0 is stored. This value is used later.
ReadDrive procedure is used to load the second drive without using the INT 13 Extensions API, but is used later to load the partition boot information using INT 13 Extensions API.
Things for my own note, there are 3 possible error messages while processing the LVM MBR: SYS01462, SYS01463, and SYS01464. Also, the drives look like they must support INT 13 Extensions API which should not be a problem now days.
Deletions:
Loaded at 7C00h, setup stack and copy block from 7C00 to 7E00h. Push 7E20h on the stack and return near which will begin execution at 7E20h. This is the initial code loaded at 07C0:0000 and the disassembled code relocated at 07E0:0000 continues below.
After relocation entry at 7E20:


Revision [1037]

Edited on 2008-05-17 06:03:28 by MikeGreene
Additions:
Loaded at 7C00h, setup stack and copy block from 7C00 to 7E00h. Push 7E20h on the stack and return near which will begin execution at 7E20h. This is the initial code loaded at 07C0:0000 and the disassembled code relocated at 07E0:0000 continues below.
; the following get executed if a 0Ah found on 2nd drive
mov dl, 81h ; second drive 81h in dl
mov cx, bx ; bx - location of 0Ah partition info
; get here if boot manager part found on 1st drive, no second drive, and falls through
; no boot manager found on second drive
; seems to just run through the MBR and ensure it is somewhat correct
; at this point dl contains drive number 80h or 81h
Deletions:
Loaded at 7C00h, setup stack and copy block from 7C00 to 7E00h. Push 7E20h on the stack and return near which will begin execution at 7E00h.
mov dl, 81h ; second drive 81h
; get here if boot manager part found early, no second drive,


Revision [1006]

The oldest known version of this page was created on 2008-05-15 18:56:45 by MikeGreene
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki 1.1.6.7
Page was generated in 0.7441 seconds