Changeset 30 for trunk/BOOTCODE/SPECIAL
- Timestamp:
- May 6, 2011, 4:25:19 AM (15 years ago)
- Location:
- trunk/BOOTCODE/SPECIAL
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BOOTCODE/SPECIAL/APM.ASM
r29 r30 20 20 ;--------------------------------------------------------------------------- 21 21 22 IFDEF ModuleNames 23 DB 'APM',0 24 ENDIF 25 22 26 ; Here is APM Code to turn off the computer 23 27 -
trunk/BOOTCODE/SPECIAL/F00K/BILLSUXX.ASM
r29 r30 27 27 ; Here is code to change Extended Partition to Type 05h or 0Fh depending 28 28 ; on the partition's P-flag including the overall M$hack-Enable Flag. 29 30 IFDEF ModuleNames 31 DB 'BILLSUXX',0 32 ENDIF 33 29 34 MSHACK_ProcessPartTables Proc Near Uses ax dx di 30 35 ; Check Overall M$-Hack Enable -
trunk/BOOTCODE/SPECIAL/FAT16.ASM
r29 r30 20 20 ;--------------------------------------------------------------------------- 21 21 22 IFDEF ModuleNames 23 DB 'FAT16',0 24 ENDIF 25 22 26 ; Here is access code for accessing FAT-16 partitions. It's not a complete 23 27 ; File-API and only for simple readonly-access. … … 27 31 ; I did not want to code silly cylinder stuff here. I have also used 28 32 ; i386 code in here, because Linux requires so as well. Please note that 29 ; I don't use i386 code anywhere (!) else in AiR-BOOT. 30 ; 33 ; I don't use i386 code anywhere (!) else in AiR-BOOT. ; Rousseau: yes you did, movezx is 386-only :-) 34 ; ; Replaced by 286 instructions. 31 35 ; Initialize FAT-16 access on specified partition (required for following xs) 32 36 ; In: DS:SI - IPT-Entry that contains a FAT-16 partition … … 131 135 mov ax, dx 132 136 sub ax, 2 ; Everything starts at Cluster 2 133 movzx bx, FAT16_SecsPerCluster 137 ;movzx bx, FAT16_SecsPerCluster 138 mov bl,FAT16_SecsPerCluster 139 mov bh,0 140 134 141 mul bx 135 142 shl edx, 16 … … 145 152 add di, ax 146 153 ; Finally, look for next Cluster following to this one... 147 movzx bx, dl 154 ;movzx bx, dl 155 mov bl,dl 156 mov bh,0 157 148 158 shl bx, 1 ; BX - Offset within FAT-Table 149 159 shr dx, 8 ; DX - FAT-Sector … … 259 269 pop ax 260 270 mov dx, si 261 movzx cx, ah 271 ;movzx cx, ah 272 mov cl,ah 273 mov ch,0 274 262 275 rep movsb 263 276 mov si, dx ; Restore SI -
trunk/BOOTCODE/SPECIAL/FX.ASM
r29 r30 19 19 ; AiR-BOOT / F/X 20 20 ;--------------------------------------------------------------------------- 21 22 IFDEF ModuleNames 23 DB 'FX',0 24 ENDIF 21 25 22 26 ; There you go. Some nice old-school demo coder effects :) … … 268 272 cmp di, FX_MaxScanLine 269 273 jb FX_MCS_VerticalLoop 270 274 271 275 mov ax, FX_CooperBarsTimer 272 276 dec ax … … 386 390 FX_CC_ActiveState: 387 391 ; increment SinusPos by 1 388 movzx bx, bptr ds:[FX_SinusPos+si] 392 ;movzx bx, bptr ds:[FX_SinusPos+si] 393 mov bl,bptr ds:[FX_SinusPos+si] 394 mov bh,0 395 389 396 inc bx 390 397 mov bptr ds:[FX_SinusPos+si], bl … … 409 416 FX_CalculateWideScroller Proc Near Uses 410 417 mov bx, FX_WideScrollerCurPos 411 movzx cx, FX_WideScrollerSpeed 418 ;movzx cx, FX_WideScrollerSpeed 419 mov cl,FX_WideScrollerSpeed 420 mov ch,0 421 412 422 test FX_WideScrollerAbsDirection, 1 413 423 jnz FXCWS_RIGHT -
trunk/BOOTCODE/SPECIAL/FXTABLES.ASM
r29 r30 20 20 ;--------------------------------------------------------------------------- 21 21 22 IFDEF ModuleNames 23 DB 'FXTABLES',0 24 ENDIF 25 22 26 ; Sinus-Table - 128xWORD = 256 Bytes 23 27 FX_SinusTab dw 00101h, 00102h, 00103h, 00105h, 00107h, 0010Ah, 0010Dh, 00111h -
trunk/BOOTCODE/SPECIAL/LINUX.ASM
r29 r30 40 40 ; some nice menus, setup, text, cyrillic support, demo-coder effects, easy 41 41 ; handling, help, auto-detection and plenty of other stuff INTO AROUND 25k. 42 ; 42 ; 43 43 ; Oh, why is this code here? Because of 2 friends of mine. Otherwise I wouldnt 44 44 ; have done it as well as fat16.asm. 45 46 IFDEF ModuleNames 47 DB 'LINUX',0 48 ENDIF 45 49 46 50 Linux_TranslateBase db '/dev/hd' … … 217 221 mov dx, ds:[si+LocIPT_LocationBegin] 218 222 ; from now on, we don't need si anymore 219 223 220 224 ; Linux has 1 'BR' (which is crap) and some setup sectors 221 225 ; we load them at 9000:0, what a luck, we are at 8000:0 :-)) … … 342 346 jz LLL_LoadNormalKernel 343 347 jmp LLL_LoadBigKernel 344 348 345 349 LLL_LoadNormalKernel: 346 350 ; NORMAL KERNEL … … 458 462 dw 0 459 463 dw 0FFFFh 460 MBR_Linux_GDT_Dst db 0, 0, 10h ; Dest is "10000:0" 464 MBR_Linux_GDT_Dst db 0, 0, 10h ; Dest is "10000:0" 461 465 db 093h 462 466 dw 0 -
trunk/BOOTCODE/SPECIAL/LVM.ASM
r29 r30 19 19 ; AiR-BOOT / LVM 20 20 ;--------------------------------------------------------------------------- 21 22 IFDEF ModuleNames 23 DB 'LVM',0 24 ENDIF 21 25 22 26 LVM_InitCRCTable Proc Near Uses … … 25 29 mov di, offset LVM_CRCTable 26 30 LVM_ICRCT_Loop: 27 movzx ax, cl 31 ;movzx ax, cl 32 mov al,cl 33 mov ah,0 34 28 35 xor dx, dx ; DX:AX - CRC-Value 29 36 mov ch, 8 … … 86 93 test [CFG_IgnoreLVM], 1 ; We are supposed to ignore LVM, so 87 94 jnz LVMCSS_InvalidSignature ; any sector is bad! 88 cmp wptr [si+LocLVM_SignatureStart], 5202h 95 cmp wptr [si+LocLVM_SignatureStart], 5202h ; Rousseau: identify LVM sector 89 96 jne LVMCSS_InvalidSignature 90 97 cmp wptr [si+LocLVM_SignatureStart+2], 'BM' -
trunk/BOOTCODE/SPECIAL/SOUND.ASM
r29 r30 19 19 ; AiR-BOOT / SOUND SUPPORT 20 20 ;--------------------------------------------------------------------------- 21 22 IFDEF ModuleNames 23 DB 'SOUND',0 24 ENDIF 21 25 22 26 ; Here is some sound code. Requested by Hex1753. … … 108 112 ret 109 113 SOUND_WaitToSilence EndP 114 115 116 117 ; Rousseau: added 118 SOUND_Beep PROC Near 119 pushf 120 pusha 121 122 mov al, 7 123 mov bh, 0 124 mov bl, 7 125 mov ah, 0eh 126 int 10h 127 128 popa 129 popf 130 ret 131 SOUND_Beep ENDP -
trunk/BOOTCODE/SPECIAL/VIRUS.ASM
r29 r30 23 23 ; system will get halted. On Non-Real-Mode this will only save Interrupt Vectors. 24 24 ; Segment Registers preserved 25 26 IFDEF ModuleNames 27 DB 'VIRUS',0 28 ENDIF 29 25 30 VIRUS_CheckForStealth Proc Near Uses ds si es di 26 31 xor al, al … … 154 159 mov bx, BootBasePtr 155 160 mov dx, 0080h 156 mov cx, 003Ch ; First Harddrive, Sector 60 161 ;mov cx, 003Ch ; First Harddrive, Sector 60 162 mov cx, image_size / sector_size ; Harddisc 0, Sector 60 (or 62 for extended version) 157 163 mov ax, 0301h ; Write 1 Sector 158 164 int 13h … … 166 172 mov bx, offset TmpSector 167 173 mov dx, 0080h 168 mov cx, 003Ch ; Harddisc 0, Sector 60 174 ;mov cx, 003Ch ; Harddisc 0, Sector 60 175 mov cx, image_size / sector_size ; Harddisc 0, Sector 60 (or 62 for extended version) 169 176 mov ax, 0201h ; Load 1 Sector 170 177 pushf
Note:
See TracChangeset
for help on using the changeset viewer.
