Changeset 38 for trunk/BOOTCODE/SPECIAL/LINUX.ASM
- Timestamp:
- Apr 11, 2014, 9:36:56 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BOOTCODE/SPECIAL/LINUX.ASM
r37 r38 188 188 add di, LocIPT_Name 189 189 LSKN_SearchLoop: 190 push cx 191 push si 192 push di 190 push cx si di 193 191 mov cx, 11 194 192 repe cmpsb ; Compare total 11-bytes 195 pop di 196 pop si 197 pop cx 193 pop di si cx 198 194 je LSKN_Found 199 195 add di, LocIPT_LenOfIPT … … 228 224 ; Linux has 1 'BR' (which is crap) and some setup sectors 229 225 ; we load them at 9000:0, what a luck, we are at 8000:0 :-)) 230 push ds 231 push es 226 push ds es 232 227 mov ax, 9000h 233 228 mov es, ax … … 260 255 mov ax, 6000h 261 256 mov es, ax 262 ; Push Kernel-Entry-Pointer 263 push cx 264 push si 257 push cx si ; Push Kernel-Entry-Pointer 265 258 mov si, di 266 259 shl cx, 9 ; Sectors to Byte Count … … 269 262 shr cx, 1 270 263 rep movsw ; Copy Data... 271 ; Get Kernel-Entry-Pointer back 272 pop si 273 pop cx 264 pop si cx ; Get Kernel-Entry-Pointer back 274 265 LLL_GotAll: 275 pop es 276 pop ds 277 278 ; Push Missing-Sectors, StartCluster 279 push cx 280 push dx 266 pop es ds 267 268 push cx dx ; Push Missing-Sectors, StartCluster 281 269 mov ax, 9000h 282 270 mov ds, ax … … 348 336 stosb ; Write another NUL 349 337 pop cx 350 ; Pop StartCluster, Missing-Sectors 351 pop dx 352 pop bx 338 pop dx bx ; Pop StartCluster, Missing-Sectors 353 339 ; CX - Sector-Count of Kernel Image, DX - Starting Cluster of Kernel Image 354 340 ; BX - Sector-Count left over in 6000:0 area from Setup Code loading
Note:
See TracChangeset
for help on using the changeset viewer.