80386 CPU detection fix
This commit is contained in:
parent
32675aea39
commit
75d8e1e193
24 changed files with 123 additions and 60 deletions
|
|
@ -7,17 +7,17 @@ root = true
|
|||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
|
||||
[*.BAS,*.bas]
|
||||
[*.{BAS,bas}]
|
||||
indent_style = space
|
||||
indent_size = 8
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[{*.ASM,*.INC,*.asm,*.inc,*.nasm,*.lst}]
|
||||
[*.{ASM,INC,asm,inc,nasm,lst}]
|
||||
indent_style = tab
|
||||
indent_size = 8
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[{*.C,*.H,*.c,*.h}]
|
||||
[*.{C,H,c,h,xml,xsl}]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
|
|
@ -27,26 +27,21 @@ indent_style = space
|
|||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.json]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.map]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.json]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = false
|
||||
|
||||
[*.xml]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[{package.json,.travis.yml}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
|
|
|||
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -15,6 +15,7 @@ static
|
|||
tmp
|
||||
/books
|
||||
/notes
|
||||
/src
|
||||
/states
|
||||
/videos
|
||||
/web
|
||||
|
|
|
|||
|
|
@ -9,10 +9,10 @@
|
|||
<releaseDate/>
|
||||
<machine href="/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml"/>
|
||||
<disk id="disk01" size="368640" chs="40:2:9" img="static/COMPAQ-DOS310-DISK1.img" href="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-DISK1.json" md5="a2a329b9d06e5bd425050a10e14e2f92" md5json="c212bb6bcd6a4c5853be2c390df66536">
|
||||
<name>COMPAQ DOS 3.10 (1)</name>
|
||||
<name>COMPAQ DOS 3.10 (Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="368640" chs="40:2:9" img="static/COMPAQ-DOS310-DISK2.img" href="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-DISK2.json" md5="4f6e5ec142fbffc36ea600c262677580" md5json="0770c611514970520b6905223c246ee9">
|
||||
<name>COMPAQ DOS 3.10 (2)</name>
|
||||
<name>COMPAQ DOS 3.10 (Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="1228800" chs="80:2:15" img="static/COMPAQ-DOS310-PERSONAL.img" href="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-PERSONAL.json" md5="df312165dc2303aab9417677a50df477" md5json="50ed5b7489569d11a9391287259eeda1">
|
||||
<name>COMPAQ DOS 3.10 (Personal)</name>
|
||||
|
|
|
|||
|
|
@ -9,21 +9,21 @@
|
|||
<releaseDate/>
|
||||
<machine href="/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml"/>
|
||||
<disk id="disk01" size="737280" chs="80:2:9" img="static/COMPAQ-DOS331-DISK1.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK1.json" md5="a2e8c19e0c712b7865d71b4b85b15f7b" md5json="56928a71999a13d3bcdff895ff222ef6">
|
||||
<name>COMPAQ DOS 3.31 (1)</name>
|
||||
<name>COMPAQ DOS 3.31 (Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="737280" chs="80:2:9" img="static/COMPAQ-DOS331-DISK2.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK2.json" md5="e7a92e5d49cfcbce27c76a76e41cef38" md5json="2e11bbeb4b83922789c8117d2d772c05">
|
||||
<name>COMPAQ DOS 3.31 (2)</name>
|
||||
<name>COMPAQ DOS 3.31 (Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="737280" chs="80:2:9" img="static/COMPAQ-DOS331-DISK3.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK3.json" md5="bfa7bb36ff3b3dbd43769d0938bcd33c" md5json="63ca40a545c2ab97e5f29bb4e7f93cc7">
|
||||
<name>COMPAQ DOS 3.31 (3)</name>
|
||||
<name>COMPAQ DOS 3.31 (Disk 3)</name>
|
||||
</disk>
|
||||
<disk id="disk04" size="737280" chs="80:2:9" img="static/COMPAQ-DOS331-DISK4.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK4.json" md5="92c26885c372db846ce990fb5e16c745" md5json="525acd75acd621e70743e5315be33dbf">
|
||||
<name>COMPAQ DOS 3.31 (4)</name>
|
||||
<name>COMPAQ DOS 3.31 (Disk 4)</name>
|
||||
</disk>
|
||||
<disk id="disk05" size="737280" chs="80:2:9" img="static/COMPAQ-DOS331-DISK5.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK5.json" md5="931554c9bdec9c26ca3e7c301b7df10f" md5json="6d58d8f3a88f7621c8ca39af118cd504">
|
||||
<name>COMPAQ DOS 3.31 (5)</name>
|
||||
<name>COMPAQ DOS 3.31 (Disk 5)</name>
|
||||
</disk>
|
||||
<disk id="disk06" size="368640" chs="40:2:9" img="static/COMPAQ-DOS331-DIAG.img" href="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DIAG.json" md5="6fc3678180e8d8c2ff5e1c3d99f14d08" md5json="a5e0a418db4fe09c13cfd86635753a05">
|
||||
<name>COMPAQ DOS 3.31 (DIAG)</name>
|
||||
<name>COMPAQ DOS 3.31 (Diagnostic)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@
|
|||
<name>PC-DOS 7.00 (SETUP Disk 5)</name>
|
||||
</disk>
|
||||
<disk id="disk06" size="1228800" chs="80:2:15" img="static/PCDOS700-1200.img" href="/disks/pc/dos/ibm/7.00/PCDOS700-1200.json" md5="ea7df13867ae2d7838c0f620281aa295" md5json="039a2b79ad43d69bc9b82ba18ad6c10b">
|
||||
<name>PC-DOS 7.00 (1.2Mb Disk)</name>
|
||||
<name>PC-DOS 7.00 (1.2M Disk)</name>
|
||||
</disk>
|
||||
<disk id="disk07" size="1474560" chs="80:2:18" img="static/PCDOS700-1440.img" href="/disks/pc/dos/ibm/7.00/PCDOS700-1440.json" md5="72f453733c6d4a102fdad4366a7daf1f" md5json="fcbc9523367a18ee0efa0dccace722c2">
|
||||
<name>PC-DOS 7.00 (1.44Mb Disk)</name>
|
||||
<name>PC-DOS 7.00 (1.44M Disk)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
|
|||
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK01.json
Normal file
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK01.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK02.json
Normal file
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK02.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK03.json
Normal file
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK03.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK04.json
Normal file
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK04.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK05.json
Normal file
1
disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK05.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK01.json
Normal file
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK01.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK02.json
Normal file
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK02.json
Normal file
File diff suppressed because one or more lines are too long
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK03.json
Normal file
1
disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK03.json
Normal file
File diff suppressed because one or more lines are too long
34
disks/pc/dos/microsoft/5.00/manifest.xml
Normal file
34
disks/pc/dos/microsoft/5.00/manifest.xml
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.18.4/manifest.xsl"?>
|
||||
<manifest type="software">
|
||||
<title>MS-DOS</title>
|
||||
<version>5.00</version>
|
||||
<type>DOS</type>
|
||||
<category>Operating System</category>
|
||||
<author>Microsoft</author>
|
||||
<releaseDate/>
|
||||
<disk id="disk01" size="368640" chs="40:2:9" img="static/360K/MSDOS500-DISK01.img" href="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK01.json" md5="7e9745c5f029d3b6d212ea807af63fef" md5json="0cec25b697c02062df948eb2a54c7cd0">
|
||||
<name>MS-DOS 5.00 (360K Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="368640" chs="40:2:9" img="static/360K/MSDOS500-DISK02.img" href="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK02.json" md5="3dc6fa07e08b09b1559955cb7c91cbde" md5json="477635397d1ce6de3dcf2b6f58f032cf">
|
||||
<name>MS-DOS 5.00 (360K Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="368640" chs="40:2:9" img="static/360K/MSDOS500-DISK03.img" href="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK03.json" md5="adcfcbcf89f3f11f3b98040f702ff42b" md5json="d6c6000cc3723045a314a35aa47ff17d">
|
||||
<name>MS-DOS 5.00 (360K Disk 3)</name>
|
||||
</disk>
|
||||
<disk id="disk04" size="368640" chs="40:2:9" img="static/360K/MSDOS500-DISK04.img" href="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK04.json" md5="424a3f240db1e6f5123702e2e418b4c3" md5json="2179d909243e8c102c0b6275b9d7c003">
|
||||
<name>MS-DOS 5.00 (360K Disk 4)</name>
|
||||
</disk>
|
||||
<disk id="disk05" size="368640" chs="40:2:9" img="static/360K/MSDOS500-DISK05.img" href="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK05.json" md5="1cab22f71e27374c5d23cae01930a01e" md5json="9203b7234a7262fad8207e0dc4052a82">
|
||||
<name>MS-DOS 5.00 (360K Disk 5)</name>
|
||||
</disk>
|
||||
<disk id="disk06" size="737280" chs="80:2:9" img="static/720K/MSDOS500-DISK01.img" href="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK01.json" md5="637b4c237b2932eb2ba5661ef6758162" md5json="a2e79fb22adc034ed5fe638301120608">
|
||||
<name>MS-DOS 5.00 (720K Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk07" size="737280" chs="80:2:9" img="static/720K/MSDOS500-DISK02.img" href="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK02.json" md5="03ee29d66e84650165dfd97c304b9f3a" md5json="f0ac77b0fce97c1635f99c9f443a6b7b">
|
||||
<name>MS-DOS 5.00 (720K Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk08" size="737280" chs="80:2:9" img="static/720K/MSDOS500-DISK03.img" href="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK03.json" md5="6864241d46bbf1f92383f0840f432f62" md5json="b0f3292650a2e82066af42583d0bb297">
|
||||
<name>MS-DOS 5.00 (720K Disk 3)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
|
||||
<debugger id="debugger" messages="fault" commands=""/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A:{name:"OS/2 1.0 (1.44Mb Install)",path:"/disks/pc/os2/ibm/1.0/OS210-INSTALL.json"}}'/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A:{name:"OS/2 1.0 (1.44M Install)",path:"/disks/pc/os2/ibm/1.0/OS210-INSTALL.json"}}'/>
|
||||
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
|
||||
<chipset id="chipset" model="5170" floppies="[1440,1200]"/>
|
||||
<serial id="com1" adapter="1"/>
|
||||
|
|
|
|||
|
|
@ -4,15 +4,15 @@
|
|||
<title>IBM OS/2 1.0</title>
|
||||
<machine href="/disks/pc/os2/ibm/1.0/machine.xml"/>
|
||||
<disk id="disk00" size="1474560" chs="80:2:18" img="static/OS210-INSTALL.img" href="/disks/pc/os2/ibm/1.0/OS210-INSTALL.json" md5="b0410a7cd0d8bf188028729d1634bf75" md5json="4e690e5d55de300077c442762c7b7f97">
|
||||
<name>OS/2 1.0 (1.44Mb Install)</name>
|
||||
<name>OS/2 1.0 (1.44M Install)</name>
|
||||
</disk>
|
||||
<disk id="disk01" size="1474560" chs="80:2:18" img="static/OS210-DISK1.img" href="/disks/pc/os2/ibm/1.0/OS210-DISK1.json" md5="11efee476f78824cab1201a2dd3fb8f5" md5json="29fd631c5a5ca00cf6598fb8288b7c35">
|
||||
<name>OS/2 1.0 (1.44Mb Disk 1)</name>
|
||||
<name>OS/2 1.0 (1.44M Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="1474560" chs="80:2:18" img="static/OS210-DISK2.img" href="/disks/pc/os2/ibm/1.0/OS210-DISK2.json" md5="d5c03e696497729fdd89dce0e18ad7ff" md5json="d50dfed5f7d55408d9af75b382afde89">
|
||||
<name>OS/2 1.0 (1.44Mb Disk 2)</name>
|
||||
<name>OS/2 1.0 (1.44M Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="1474560" chs="80:2:18" img="static/OS210-DISK3.img" href="/disks/pc/os2/ibm/1.0/OS210-DISK3.json" md5="fd80ec4dc815bcdacf7879c50b7aa44a" md5json="7d10df7177f4a80da285d8b7b586740d">
|
||||
<name>OS/2 1.0 (1.44Mb Disk 3)</name>
|
||||
<name>OS/2 1.0 (1.44M Disk 3)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
|
|||
|
|
@ -3,24 +3,24 @@
|
|||
<manifest type="software">
|
||||
<title>IBM OS/2 1.1</title>
|
||||
<disk id="disk00" size="1474560" chs="80:2:18" img="static/OS211-INSTALLATION.img" href="/disks/pc/os2/ibm/1.1/OS211-INSTALLATION.json" md5="64b1a50f35385f326e7b59b17b417769" md5json="6510aede5a434ae794a3ee9e8d09d6c9">
|
||||
<name>OS/2 1.1 (1.44Mb Install Disk)</name>
|
||||
<name>OS/2 1.1 (1.44M Install Disk)</name>
|
||||
</disk>
|
||||
<disk id="disk01" size="1474560" chs="80:2:18" img="static/OS211-DISK01.img" href="/disks/pc/os2/ibm/1.1/OS211-DISK01.json" md5="5b0526049c097e7afa54073f13cf87d1" md5json="f74cb91702c9a502418139601269280d">
|
||||
<name>OS/2 1.1 (1.44Mb Disk 1)</name>
|
||||
<name>OS/2 1.1 (1.44M Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="1474560" chs="80:2:18" img="static/OS211-DISK02.img" href="/disks/pc/os2/ibm/1.1/OS211-DISK02.json" md5="ebd9cc64c9c24f79b63836fcce58b0f0" md5json="63f462d7abb7367145d35789a547f913">
|
||||
<name>OS/2 1.1 (1.44Mb Disk 2)</name>
|
||||
<name>OS/2 1.1 (1.44M Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="1474560" chs="80:2:18" img="static/OS211-DISK03.img" href="/disks/pc/os2/ibm/1.1/OS211-DISK03.json" md5="f4b85ca988d76f876c2f0a00cf4b57e8" md5json="f07266e75f25f5f5a5ce4e299d9dcff6">
|
||||
<name>OS/2 1.1 (1.44Mb Disk 3)</name>
|
||||
<name>OS/2 1.1 (1.44M Disk 3)</name>
|
||||
</disk>
|
||||
<disk id="disk04" size="1474560" chs="80:2:18" img="static/OS211-DISK04.img" href="/disks/pc/os2/ibm/1.1/OS211-DISK04.json" md5="67eb167bca6cf7b169011fdaedf4d358" md5json="e821febc52f1736ee2714bbe6aaf6c83">
|
||||
<name>OS/2 1.1 (1.44Mb Disk 4)</name>
|
||||
<name>OS/2 1.1 (1.44M Disk 4)</name>
|
||||
</disk>
|
||||
<disk id="disk05" size="1474560" chs="80:2:18" img="static/OS211-DEVICES.img" href="/disks/pc/os2/ibm/1.1/OS211-DEVICES.json" md5="9d3dfde0206b562beae90cab21f9eba5" md5json="2cb39da33b61e762b87259b59bf5ccf5">
|
||||
<name>OS/2 1.1 (1.44Mb Devices Disk)</name>
|
||||
<name>OS/2 1.1 (1.44M Devices Disk)</name>
|
||||
</disk>
|
||||
<disk id="disk06" size="1474560" chs="80:2:18" img="static/OS211-PRINTERS.img" href="/disks/pc/os2/ibm/1.1/OS211-PRINTERS.json" md5="36cd9ea1e7184872548598dae4b60cb8" md5json="3ddd4aa8468a17a42aa247cf7b447a65">
|
||||
<name>OS/2 1.1 (1.44Mb Printers Disk)</name>
|
||||
<name>OS/2 1.1 (1.44M Printers Disk)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
|
|||
|
|
@ -3,33 +3,33 @@
|
|||
<manifest type="software">
|
||||
<title>IBM OS/2 1.3</title>
|
||||
<disk id="disk01" size="1474560" chs="80:2:18" img="static/OS213-DISK01.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK01.json" md5="b393291dc9d96255b7ea9d9d614ecf23" md5json="a3af9c440d774c4084862a4caa5e17e2">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 1)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 1)</name>
|
||||
</disk>
|
||||
<disk id="disk02" size="1474560" chs="80:2:18" img="static/OS213-DISK02.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK02.json" md5="6b3bf3f03c914c9718a9fe603a4a62b2" md5json="65322381b4ffbd62266c28c2ec0c027f">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 2)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 2)</name>
|
||||
</disk>
|
||||
<disk id="disk03" size="1474560" chs="80:2:18" img="static/OS213-DISK03.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK03.json" md5="207c6196d09dc1ef11a16e34e731c7d9" md5json="dea620df5b4f6a41deec101bd6dc3ef8">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 3)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 3)</name>
|
||||
</disk>
|
||||
<disk id="disk04" size="1474560" chs="80:2:18" img="static/OS213-DISK04.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK04.json" md5="8175fa3257fc60b3b281fbf25b50adcc" md5json="5d7aaf6609dd58b614554b5f26600a2b">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 4)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 4)</name>
|
||||
</disk>
|
||||
<disk id="disk05" size="1474560" chs="80:2:18" img="static/OS213-DISK05.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK05.json" md5="8175fa3257fc60b3b281fbf25b50adcc" md5json="5d7aaf6609dd58b614554b5f26600a2b">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 5)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 5)</name>
|
||||
</disk>
|
||||
<disk id="disk06" size="1474560" chs="80:2:18" img="static/OS213-DISK06.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK06.json" md5="3f61008d56453a40c4444a397260b39c" md5json="a25d13bd6beacb002acfd4b6cacdbea3">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 6)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 6)</name>
|
||||
</disk>
|
||||
<disk id="disk07" size="1474560" chs="80:2:18" img="static/OS213-DISK07.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK07.json" md5="0de3327c227f1fe00e211b558ea2e23a" md5json="d33aaa2d626b5f3c42b354a21d4bfe67">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 7)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 7)</name>
|
||||
</disk>
|
||||
<disk id="disk08" size="1474560" chs="80:2:18" img="static/OS213-DISK08.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK08.json" md5="821a6873437610f77167e8884c4bd977" md5json="93bb507a019409004716c48f5c002a5d">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 8)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 8)</name>
|
||||
</disk>
|
||||
<disk id="disk09" size="1474560" chs="80:2:18" img="static/OS213-DISK09.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK09.json" md5="fce2113a6d1a286afa1653bdc77214e0" md5json="3282cd0642a19f97a1c8758f3a4debdc">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 9)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 9)</name>
|
||||
</disk>
|
||||
<disk id="disk10" size="1474560" chs="80:2:18" img="static/OS213-DISK10.img" href="/disks/pc/os2/ibm/1.3/OS213-DISK10.json" md5="58e1156eba5600bc600d17be93f5e8e0" md5json="e8567c55839410508911dc96b260ee57">
|
||||
<name>OS/2 1.3 (1.44Mb Disk 10)</name>
|
||||
<name>OS/2 1.3 (1.44M Disk 10)</name>
|
||||
</disk>
|
||||
</manifest>
|
||||
|
|
|
|||
|
|
@ -2279,7 +2279,7 @@ if (DEBUGGER) {
|
|||
/*
|
||||
* For purposes of display only, rewind addr to the address of the responsible "INT n" instruction; we
|
||||
* know it's the two-byte "INT n" instruction because that's the only opcode handler that calls checkIntNotify()
|
||||
* at the moment. If that changes, then this will have to change as well.
|
||||
* at the moment.
|
||||
*/
|
||||
addr -= 2;
|
||||
this.message("INT " + str.toHexByte(nInt) + ": AH=" + str.toHexByte(AH) + " @" + this.hexOffset(addr - this.cpu.segCS.base, this.cpu.getCS()) + sFunc);
|
||||
|
|
|
|||
|
|
@ -400,7 +400,7 @@ CompaqController.readByte = function readCompaqControllerByte(off, addr)
|
|||
b = (off & 0x1)? (this.controller.wRAMSetup >> 8) : (this.controller.wRAMSetup & 0xff);
|
||||
}
|
||||
if (DEBUG) {
|
||||
this.controller.ram.printMessage("CompaqController.readByte(" + str.toHexWord(off) + ") returned " + str.toHexByte(b), true, true);
|
||||
this.controller.ram.printMessage("CompaqController.readByte(" + str.toHexWord(off) + ") returned " + str.toHexByte(b), 0, true);
|
||||
if (MAXDEBUG && DEBUGGER && off >= 0x2) this.dbg.stopCPU();
|
||||
}
|
||||
return b;
|
||||
|
|
@ -459,7 +459,7 @@ CompaqController.writeByte = function writeCompaqControllerByte(off, b, addr)
|
|||
* All bits in 0x80C00001 and 0x80C00003 are reserved, so we can simply ignore those writes.
|
||||
*/
|
||||
if (DEBUG) {
|
||||
this.controller.ram.printMessage("CompaqController.writeByte(" + str.toHexWord(off) + "," + str.toHexByte(b) + ")", true, true);
|
||||
this.controller.ram.printMessage("CompaqController.writeByte(" + str.toHexWord(off) + "," + str.toHexByte(b) + ")", 0, true);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1285,8 +1285,8 @@ Card.ATC = {
|
|||
INDX: 0x10, // ATC Mode Control Register
|
||||
GRAPHICS: 0x01, // bit 0: set for graphics mode, clear for alphanumeric mode
|
||||
MONOEM: 0x02, // bit 1: set for monochrome emulation mode, clear for color emulation
|
||||
TEXTGRCC: 0x04, // bit 2: set for line graphics in character codes 0xC0-0xDF, clear otherwise
|
||||
TEXTBLINK: 0x08, // bit 3: set for text blink attribute, clear for background intensity attribute
|
||||
TEXT_9DOT: 0x04, // bit 2: set for 9-dot replication in character codes 0xC0-0xDF
|
||||
BLINK_ENABLE: 0x08, // bit 3: set for text/graphics blink, clear for background intensity
|
||||
RESERVED: 0x10, // bit 4: reserved
|
||||
PANCOMPAT: 0x20, // bit 5: set for pixel-panning compatibility
|
||||
PELWIDTH: 0x40, // bit 6: set for 256-color modes, clear for all other modes
|
||||
|
|
@ -3904,6 +3904,9 @@ Video.prototype.createFontColor = function(font, iColor, rgbColor, nDouble, offD
|
|||
* This "bit" of logic takes care of those characters (0xC0-0xDF) whose 9th bit must mirror the 8th bit;
|
||||
* in all other cases, any bit past the 8th bit is automatically zero. It also takes care of embedding a solid
|
||||
* row of bits whenever fUnderline is true.
|
||||
*
|
||||
* TODO: For EGA/VGA, replication of the 9th dot needs to be based on the TEXT_9DOT bit of the ATC.MODE
|
||||
* register, which is particularly important for user-defined fonts that do not want that bit replicated.
|
||||
*/
|
||||
var bit = (fUnderline? 1 : (b & (0x80 >> (x >= 8 && iChar >= 0xC0 && iChar <= 0xDF? 7 : x))));
|
||||
var xDst = (x << nDouble);
|
||||
|
|
@ -5100,7 +5103,13 @@ Video.prototype.updateScreenText = function(addrScreen, addrScreenLimit, iCell,
|
|||
var dataBlink = 0;
|
||||
var dataDraw = (Video.ATTRS.DRAW_FGND << 8);
|
||||
var dataMask = 0xfffff;
|
||||
if (this.cardActive.regMode & Card.MDA.MODE.BLINK_ENABLE) {
|
||||
|
||||
var fBlinkEnable = (this.cardActive.regMode & Card.MDA.MODE.BLINK_ENABLE);
|
||||
if (this.nCard >= Video.CARD.EGA) {
|
||||
fBlinkEnable = (this.cardActive.regATCData[Card.ATC.MODE.INDX] & Card.ATC.MODE.BLINK_ENABLE);
|
||||
}
|
||||
|
||||
if (fBlinkEnable) {
|
||||
dataBlink = (Video.ATTRS.BGND_BLINK << 8);
|
||||
dataMask &= ~dataBlink;
|
||||
if (!(this.cBlinks & 0x2)) dataMask &= ~dataDraw;
|
||||
|
|
@ -5223,6 +5232,8 @@ Video.prototype.updateScreenGraphicsCGA = function(addrScreen, addrScreenLimit)
|
|||
/**
|
||||
* updateScreenGraphicsEGA(addrScreen, addrScreenLimit)
|
||||
*
|
||||
* TODO: Add support for blinking graphics (ATC.MODE.BLINK_ENABLE)
|
||||
*
|
||||
* @param addrScreen
|
||||
* @param addrScreenLimit
|
||||
*/
|
||||
|
|
@ -5346,6 +5357,8 @@ Video.prototype.updateScreenGraphicsEGA = function(addrScreen, addrScreenLimit)
|
|||
* (320x200x256), where each pixel's bits are contained within a single plane. This is essentially all 256-color
|
||||
* modes (CHAIN4, "Mode X", etc), hence the hard-coded call to getCardColors(8).
|
||||
*
|
||||
* TODO: Add support for blinking graphics (ATC.MODE.BLINK_ENABLE)
|
||||
*
|
||||
* @param addrScreen
|
||||
* @param addrScreenLimit
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -431,7 +431,8 @@ X86.BACKTRACK = {
|
|||
/*
|
||||
* These PS flags are always stored directly in regPS for the 8086/8088, hence the
|
||||
* "direct" designation; other processors must adjust these bits accordingly. The final
|
||||
* adjusted value is stored in PS_DIRECT.
|
||||
* adjusted value is stored in PS_DIRECT (ie, 80286 and up also include PS.IOPL.MASK and
|
||||
* PS.NT in PS_DIRECT).
|
||||
*/
|
||||
X86.PS_DIRECT_8086 = (X86.PS.TF | X86.PS.IF | X86.PS.DF);
|
||||
|
||||
|
|
|
|||
|
|
@ -1014,6 +1014,7 @@ X86CPU.prototype.initProcessor = function()
|
|||
{
|
||||
this.PS_SET = X86.PS_SET_8086;
|
||||
this.PS_DIRECT = X86.PS_DIRECT_8086;
|
||||
this.PS_CLEAR_RM = X86.PS.IOPL.MASK | X86.PS.NT;
|
||||
|
||||
this.OPFLAG_NOINTR_8086 = X86.OPFLAG.NOINTR;
|
||||
this.nShiftCountMask = 0xff; // on an 8086/8088, all shift counts are used as-is
|
||||
|
|
@ -1080,6 +1081,13 @@ X86CPU.prototype.initProcessor = function()
|
|||
|
||||
if (I386 && this.model >= X86.MODEL_80386) {
|
||||
var bOpcode;
|
||||
/*
|
||||
* TODO: Determine if the Nested Task (PS.NT) flag should really be cleared in real-mode on an 80386
|
||||
* (we already know based on the OS/2 CPU test discussed in setPS() that it can't be set in real-mode
|
||||
* on an 80286); for now, we assume that it should remain clear on all CPUs, to avoid any unexpected
|
||||
* nested-task weirdness in real-mode.
|
||||
*/
|
||||
this.PS_CLEAR_RM = X86.PS.NT;
|
||||
this.aOps[X86.OPCODE.FS] = X86.opFS; // 0x64
|
||||
this.aOps[X86.OPCODE.GS] = X86.opGS; // 0x65
|
||||
this.aOps[X86.OPCODE.OS] = X86.opOS; // 0x66
|
||||
|
|
@ -2680,14 +2688,17 @@ X86CPU.prototype.setPS = function(regPS, cpl)
|
|||
/*
|
||||
* OS/2 1.0 discriminates between an 80286 and an 80386 based on whether an IRET in real-mode that
|
||||
* pops 0xF000 into the flags is able to set *any* of flag bits 12-15: if it can, then OS/2 declares
|
||||
* the CPU an 80386. Therefore, in real-mode, we must zero all incoming bits 12-15.
|
||||
* the CPU an 80386.
|
||||
*
|
||||
* This has the added benefit of relieving us from zeroing the effective IOPL (this.nIOPL) whenever
|
||||
* we're in real-mode, since we're zeroing the incoming IOPL bits up front now.
|
||||
* So, if the CPU is an 80286, we zero incoming bits 12-14 in real-mode (bit 15 is never allowed to
|
||||
* be modified, so there's no need to mask it). And if the CPU is an 80386, we zero only bit 14 (PS.NT),
|
||||
* allowing the IOPL bits to change; however, that should not affect any real-mode operations, since
|
||||
* segCS.cpl will always be zero, making the IOPL setting irrelevant.
|
||||
*
|
||||
* It's still an open question whether an 80386 should also clear the Nested Task (PS.NT) flag in
|
||||
* real-mode; if not, then initProcessor() should set PS_CLEAR_RM to zero.
|
||||
*/
|
||||
if (!(this.regCR0 & X86.CR0.MSW.PE)) {
|
||||
regPS &= ~(X86.PS.IOPL.MASK | X86.PS.NT | X86.PS.BIT15);
|
||||
}
|
||||
if (!(this.regCR0 & X86.CR0.MSW.PE)) regPS &= ~this.PS_CLEAR_RM;
|
||||
|
||||
/*
|
||||
* There are some cases (eg, an IRET returning to a less privileged code segment) where the CPL
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ if (typeof module !== 'undefined') {
|
|||
* @param {string} type
|
||||
* @param {Object} [parms]
|
||||
* @param {Object} [constructor]
|
||||
* @param {number} [bitsMessage]
|
||||
* @param {number} [bitsMessage] selects message(s) that the component wants to enable (default is 0)
|
||||
*/
|
||||
function Component(type, parms, constructor, bitsMessage)
|
||||
{
|
||||
|
|
@ -123,7 +123,7 @@ function Component(type, parms, constructor, bitsMessage)
|
|||
this.clearError();
|
||||
this.bindings = {};
|
||||
this.dbg = null; // by default, no connection to a Debugger
|
||||
this.bitsMessage = bitsMessage || -1;
|
||||
this.bitsMessage = bitsMessage || 0;
|
||||
|
||||
Component.add(this);
|
||||
}
|
||||
|
|
@ -946,7 +946,7 @@ Component.prototype = {
|
|||
bitsMessage = bitsMessage || this.bitsMessage;
|
||||
}
|
||||
var bitsEnabled = this.dbg.bitsMessage & bitsMessage;
|
||||
return (bitsEnabled === bitsMessage || !!(bitsEnabled & this.dbg.bitsWarning));
|
||||
return (!!bitsMessage && bitsEnabled === bitsMessage || !!(bitsEnabled & this.dbg.bitsWarning));
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue