Changeset 67 for trunk/bootcode
- Timestamp:
- Oct 11, 2016, 10:42:09 PM (9 years ago)
- Location:
- trunk/bootcode
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/bootcode/airboot.asm
r66 r67 1182 1182 1183 1183 ; 1184 ; BOOKMARK: Check for eCSbeing installed1185 ; Here we check if eComStation v2.1+is being installed.1184 ; BOOKMARK: Check for OS/2 being installed 1185 ; Here we check if OS/2 is being installed. 1186 1186 ; If so, we forgo the menu and directly boot it. 1187 1187 ; … … 1189 1189 ; If the first byte of the name of the Install Volume is not 0 1190 1190 ; then we potentially have a phase1 boot. 1191 test byte ptr [ eCS_InstallVolume],0ffh1191 test byte ptr [OS2_InstallVolume],0ffh 1192 1192 ; Nope, so continue normally. 1193 1193 jz MBR_Main_ContinueBoot … … 1221 1221 1222 1222 1223 ; BOOKMARK: Scan for Partitions (Only if eCSinstall going on)1223 ; BOOKMARK: Scan for Partitions (Only if OS/2 install going on) 1224 1224 ; Because one or more partitions are possibly added, the 1225 1225 ; PartitionXref table is not 'in sync' and could cause the … … 1305 1305 ; Save configuration so phase1 boot-through is disabled 1306 1306 ; on next boot. 1307 mov byte ptr [ eCS_InstallVolume], 01307 mov byte ptr [OS2_InstallVolume], 0 1308 1308 call DriveIO_SaveConfiguration 1309 1309 … … 1440 1440 1441 1441 ; Preload the selected menu-entry 1442 ; However, this value will be wrong if eCSphase1 is1442 ; However, this value will be wrong if OS/2 phase1 is 1443 1443 ; active and the installation partition is newly created. 1444 1444 ; See below for the adjustment. … … 1912 1912 ; So future config changes will not break auto-install. 1913 1913 ; 1914 ; BOOKMARK: Name of eCSInstallation Volume1914 ; BOOKMARK: Name of OS/2 Installation Volume 1915 1915 ORIGIN 06D00h 1916 1916 1917 ; SET(A)BOOT stores the volume name of the eCSsystem being installed here.1917 ; SET(A)BOOT stores the volume name of the OS/2 system being installed here. 1918 1918 ; It is truncated to 11 chars because AiR-BOOT currently does not support 1919 1919 ; longer labelnames. The name is also capitalized. 1920 ; eCS_InstallVolume db 12 dup (0)1921 ; eCS_InstallVolume db 'HIGHLOG' ,01922 ; eCS_InstallVolume db 'ECS-MIDDLE',0,01923 ; eCS_InstallVolume db 'ECS-HIGH',0,0,0,01924 ; eCS_InstallVolume db 'ECS-HIGH',0,'NO',01925 ; eCS_InstallVolume db 'KANWEG2',01926 eCS_InstallVolume db 0,'NOPHASEONE' ,01920 ;OS2_InstallVolume db 12 dup (0) 1921 ;OS2_InstallVolume db 'HIGHLOG' ,0 1922 ;OS2_InstallVolume db 'ECS-MIDDLE',0,0 1923 ;OS2_InstallVolume db 'ECS-HIGH',0,0,0,0 1924 ;OS2_InstallVolume db 'ECS-HIGH',0,'NO',0 1925 ;OS2_InstallVolume db 'KANWEG2',0 1926 OS2_InstallVolume db 0,'NOPHASEONE' ,0 1927 1927 1928 1928 ; -
trunk/bootcode/airboot.md5
r65 r67 1 93c13f43914d4e9b6497f4011a475601*airboot.bin1 fce57015237d051274d5dcf1b84d5293 *airboot.bin -
trunk/bootcode/regular/driveio.asm
r57 r67 1079 1079 ; ------------------------------------------------------ 1080 1080 ; Load the master LVM-sector to get the number of sectors per track as 1081 ; eCS views the drive. If no master LVM-sector is found it is assumed eCS1081 ; OS/2 views the drive. If no master LVM-sector is found it is assumed OS/2 1082 1082 ; is not installed. The master LVM-sector can be located at three different 1083 1083 ; places depending on drive size and partitioning scheme and driver used. 1084 ; When DANIS506.ADD is used, the eCSextended geometry will be 255/127 for1084 ; When DANIS506.ADD is used, the OS/2 extended geometry will be 255/127 for 1085 1085 ; drives >502GiB but <1TiB. Then the location will be sector 127 which 1086 1086 ; is LBA 126 (7Eh). 1087 ; IBM1S506.ADD will always use 255/255 for the extended eCSgeometry.1087 ; IBM1S506.ADD will always use 255/255 for the extended OS/2 geometry. 1088 1088 ; DANIS506.ADD will use 255/255 for drives >1TiB. 1089 1089 ; Then the location of the master LVM-sector will be 255 which is LBA 254 (FEh). 1090 ; When eCS is installed on a huge drive that alread had a system on it, eCS1090 ; When OS/2 is installed on a huge drive that alread had a system on it, OS/2 1091 1091 ; will be confined to the lower 502GiB of the drive. 1092 1092 ; In this case the normal geometry from Int13X will be used. … … 1207 1207 1208 1208 ; --------------------------------------------------- 1209 ; Rousseau ## Large drives, ( eCS) geometry and LBA ##1209 ; Rousseau ## Large drives, (OS/2) geometry and LBA ## 1210 1210 ; --------------------------------------------------- 1211 1211 ; A sector size of 512 bytes is assumed in the below calculations. -
trunk/bootcode/regular/other.asm
r57 r67 290 290 call MBR_Teletype 291 291 292 mov si, offset eCS_InstallVolume292 mov si, offset OS2_InstallVolume 293 293 mov al, [si] 294 294 test al,al ; See if phase 1 is active -
trunk/bootcode/regular/partmain.asm
r57 r67 787 787 PART_IsInstallVolume Proc Near Uses ax cx dx si di 788 788 cld ; Advance upwards with lodsb 789 mov di, offset eCS_InstallVolume ; Address of install-volume label (max. 11 chars)789 mov di, offset OS2_InstallVolume ; Address of install-volume label (max. 11 chars) 790 790 791 791 mov cx, 11 ; Maximum length of label … … 967 967 ;~ HELEMAAL NAKIJKEN ! 968 968 ;~ DRIVELETTER ASIGNMENT CORRIGEREN 969 ;~ WORDT TOCH BOOTDRIVE IN BPB GEZET ALS NON eCSSYSTEEM BOOT ?969 ;~ WORDT TOCH BOOTDRIVE IN BPB GEZET ALS NON-OS/2 SYSTEEM BOOT ? 970 970 971 971 … … 1210 1210 1211 1211 1212 ; --------------------------------------------------------- OS/2 / eCSI13X1212 ; --------------------------------------------------------------- OS/2 I13X 1213 1213 ; Now check if the partition to get booted is above 8 GB. 1214 1214 ; If yes, set magic bytes 'I13X' at 3000:0 for boot-loader to recognize. … … 1735 1735 ; 1736 1736 ; FIXME: PBR Already loaded 1737 1737 1738 1738 ; When FAT12/FAT16/HPFS/JFS then boot-drive-letter can be tested 1739 1739 ; or adjusted. … … 1875 1875 1876 1876 ; See if the BPB boot-drive-letter is valid 1877 ; This one is supposed not to change since eCScannot be booted1877 ; This one is supposed not to change since OS/2 cannot be booted 1878 1878 ; from another drive then it was installed on. 1879 1879 test ah,ah … … 1887 1887 add al,3dh 1888 1888 mov bx,[PhysDiskBpbIndex] 1889 ; Advance to field for drive-letter in BIOS notation (OS/2 - eCS)1889 ; Advance to field for drive-letter in BIOS notation (OS/2) 1890 1890 inc bx 1891 1891 ; Fix the boot-drive-letter field in the BPB … … 1901 1901 ; Also, this field is the culprit of AiR-BOOT v1.07 not handling it 1902 1902 ; correctly when the system uses HPFS and this byte is zero. 1903 ; This mostly involved booting older eCSversions on HPFS.1903 ; This mostly involved booting older OS/2 versions on HPFS. 1904 1904 ; See issues #3067 and #3119 on http://bugs.ecomstation.nl 1905 1905 ; … … 1956 1956 no_valid_boot_drive_letter_found: 1957 1957 ; HERE SHOULD COME AN ERROR POP-UP ABOUT NO BOOT-DRIVE OR NO LVM-INFO. 1958 ; WE CONTINUE BOOTING BUT OS/2 - eCSWILL MOST PROBABLY FAIL TO BOOT.1958 ; WE CONTINUE BOOTING BUT OS/2 WILL MOST PROBABLY FAIL TO BOOT. 1959 1959 1960 1960 ; FIXME: Issue some kind of warning 1961 1961 1962 1962 ;mov ah,07h 1963 1963 ;mov si,offset CheckID_MBR … … 2037 2037 pop si 2038 2038 2039 2039 2040 2040 ; BOOKMARK: Update the CRC of the Partition Boot Record. 2041 2041 mov bx, offset [PBRSector] … … 2043 2043 call DriveIO_SaveConfiguration 2044 2044 2045 2045 2046 2046 ; Setup the registers for the partition location. 2047 2047 mov ax, wptr [si+LocIPT_AbsoluteBegin+0] … … 2051 2051 mov dl, [si+LocIPT_Drive] 2052 2052 2053 2053 2054 2054 ; BOOKMARK: Write the adjusted HPFS/JFS PBR to disk. 2055 2055 mov si, offset [PBRSector] … … 2095 2095 2096 2096 2097 2097 2098 2098 2099 2099 ; -
trunk/bootcode/regular/videoio.asm
r65 r67 949 949 ;AutoStartPart db "Auto Start Partition : ",0 950 950 951 Phase1 db " eCS Install Phase 1: ",0951 Phase1 db "OS/2 Install Phase 1 : ",0 952 952 953 953 -
trunk/bootcode/setup/part_set.asm
r65 r67 127 127 PSM_KeyBootAble: 128 128 call PART_GetPartitionPointer ; Gets Partition (DL) Pointer -> SI 129 ; See if this is an eCSLVM Volume.129 ; See if this is an OS/2 LVM Volume. 130 130 ; In that case, we don't allow it to be made bootable. 131 131 ; We also show a popup to inform the user. -
trunk/bootcode/special/lvm.asm
r57 r67 239 239 ; 240 240 ; It's a PRI so we use the special locator function. 241 ; This locator takes care of extended eCSgeometry should that be used241 ; This locator takes care of extended OS/2 geometry should that be used 242 242 ; 243 243 call DriveIO_LoadMasterLVMSector … … 376 376 ; 377 377 ; It's a PRI so we use the special locator function. 378 ; This locator takes care of extended eCSgeometry should that be used378 ; This locator takes care of extended OS/2 geometry should that be used 379 379 ; 380 380 call DriveIO_LoadMasterLVMSector
Note:
See TracChangeset
for help on using the changeset viewer.