Difference between revisions of "Installing Xenix 2.x on Qemu"

From Computer History Wiki
Jump to: navigation, search
(media table: Changed table to reflect noun usage from the Xenix manual. diskette and Flexable disk drive...)
(media table)
Line 23: Line 23:
 
!Major
 
!Major
 
!Minor
 
!Minor
 +
!Actual Capacity
 
|-
 
|-
 
|fd0
 
|fd0
Line 28: Line 29:
 
|2
 
|2
 
|64
 
|64
 +
| all
 
|-
 
|-
 
|fd0135
 
|fd0135
Line 33: Line 35:
 
|2
 
|2
 
|60
 
|60
 +
| up to 1.72Mb
 
|-
 
|-
 
|fd0135ds18
 
|fd0135ds18
Line 38: Line 41:
 
|2
 
|2
 
|60
 
|60
 +
| 1.44Mb
 
|-
 
|-
 
|fd0135ds9
 
|fd0135ds9
Line 43: Line 47:
 
|2
 
|2
 
|36
 
|36
 +
| 720Kb
 
|-
 
|-
 
|fd048
 
|fd048
Line 53: Line 58:
 
|2
 
|2
 
|4
 
|4
 +
| 360Kb
 
|-
 
|-
 
|fd048ds8
 
|fd048ds8
 
| DOS version 1.1 double sided eight sector diskette
 
| DOS version 1.1 double sided eight sector diskette
 
|12
 
|12
 +
|
 +
| 320Kb
 
|-
 
|-
 
|fd048ss8  
 
|fd048ss8  
Line 62: Line 70:
 
|2
 
|2
 
|8
 
|8
 +
| 160Kb
 
|-
 
|-
 
|fd048ss9
 
|fd048ss9
Line 67: Line 76:
 
|2
 
|2
 
|0
 
|0
 +
| 180Kb
 
|-
 
|-
 
|fd096
 
|fd096
Line 72: Line 82:
 
|2
 
|2
 
|52
 
|52
 +
| Up to s
 
|-
 
|-
 
|fd096ds15
 
|fd096ds15
Line 77: Line 88:
 
|2
 
|2
 
|52
 
|52
 +
| 1.2Mb
 
|-
 
|-
 
|fd096ds18*
 
|fd096ds18*
Line 82: Line 94:
 
|2
 
|2
 
|60
 
|60
 +
| unknown
 
|-
 
|-
 
|fd096ds9
 
|fd096ds9
Line 87: Line 100:
 
|2
 
|2
 
|36
 
|36
 +
| 720Kb
 
|}
 
|}
  
  
* This format was created specifically to lower the costs of manufacturing, i.e. use less disks for distribution.   
+
'* This format was created specifically to lower the costs of manufacturing, i.e. use less disks for distribution.   
  
Hopefully this will make some sense..  Esp with the floppy driver being very touch, but at least with the device table at hand you can hard code /dev/install and friends so that things will 'just work'.  The big thing to watch for is high density vs low density....
+
Hopefully this will make some sense..  esp[ecially] with the floppy driver being very touchy, but at least with the device table at hand you can hard code /dev/install and friends so that things will 'just work'.  The big thing to watch for is high density vs low density....
  
 
From the [http://www.polarhome.com/service/man/Xenix/XG-5-16-88_5.0_XENIX_2.3_System_Administrators_Guide_May88.pdf manual]:
 
From the [http://www.polarhome.com/service/man/Xenix/XG-5-16-88_5.0_XENIX_2.3_System_Administrators_Guide_May88.pdf manual]:
Line 108: Line 122:
 
"The very first thing to understand is that these files are NOT the drivers for the devices. Drivers are in the kernel itself (/unix or /xenix or /stand/unix), and the files in /dev do not actually contain anything at all: they are just pointers to where the driver code can be found in the kernel. There is nothing more to it than that. These aren't programs, they aren't drivers, they are just pointers." [https://aplawrence.com/Unixart/devices.html Unix device pointer explanation]
 
"The very first thing to understand is that these files are NOT the drivers for the devices. Drivers are in the kernel itself (/unix or /xenix or /stand/unix), and the files in /dev do not actually contain anything at all: they are just pointers to where the driver code can be found in the kernel. There is nothing more to it than that. These aren't programs, they aren't drivers, they are just pointers." [https://aplawrence.com/Unixart/devices.html Unix device pointer explanation]
  
 +
[http://www.manmrk.net/tutorials/DOS/PSBOOK/book4/floppyd.htm Floppy Disk formats]
  
 
I've also demonstrated how to do this in a [http://youtu.be/3oinClapUZU video].
 
I've also demonstrated how to do this in a [http://youtu.be/3oinClapUZU video].
  
 
[[Category:QEMU Tutorials]] [[Category:Qemu]]
 
[[Category:QEMU Tutorials]] [[Category:Qemu]]

Revision as of 20:12, 2 August 2019

Xenix 2.3.4 on Qemu

As of Qemu 0.14.0 you can actually install Xenix version 2. This works for both the i386 & the i286 versions.

I've documented it here on my blog.

The whole thing hinges on changing the boot strings so that instead of detecting the media type, it is instead forced to use the actual media type. For example, using the 3 1/2 inch diskette the boot string goes from:

fd(64)xenix root=fd(64) swap=ram(0) pipe=ram(1) swplo=0 nswap=1000 ronly

Into this:

fd(60)xenix root=fd(60) swap=ram(0) pipe=ram(1) swplo=0 nswap=1000 ronly

Things to keep in mind is that the largest IDE hard disk that Xenix 2.x can support is 500MB.

media table

Device Name Description Major Minor Actual Capacity
fd0 Flexible disk drive 2 64 all
fd0135 3 1/2" Flexible disk drive 2 60 up to 1.72Mb
fd0135ds18 high density 1.44Mb diskette 2 60 1.44Mb
fd0135ds9 low density 720Kb diskette 2 36 720Kb
fd048 5 1/4" Flexible disk drive (low density) 2 4
fd048ds9 360K double sided nine sector diskette 2 4 360Kb
fd048ds8 DOS version 1.1 double sided eight sector diskette 12 320Kb
fd048ss8 DOS version 1.1 single sided eight sector diskette 2 8 160Kb
fd048ss9 DOS single sided nine sector diskette 2 0 180Kb
fd096 5 1/4" Flexible disk drive (high density) 2 52 Up to s
fd096ds15 1.2MB diskette 2 52 1.2Mb
fd096ds18* DMF format for 5 1/4" diskette 2 60 unknown
fd096ds9 720K 5 1/4" diskette 2 36 720Kb


'* This format was created specifically to lower the costs of manufacturing, i.e. use less disks for distribution.

Hopefully this will make some sense.. esp[ecially] with the floppy driver being very touchy, but at least with the device table at hand you can hard code /dev/install and friends so that things will 'just work'. The big thing to watch for is high density vs low density....

From the manual:

"

/dev/dsk/f0d9d       48tpi floppy device 
/dev/dsk/fOd9dt      48tpi entire disk floppy device
/dev/dsk/fOq15d      96tpi floppy device 
/dev/dsk/fOq15dt     96tpi entire disk floppy device
/dev/rdsk/fOd9d      raw 48tpi floppy device
/dev rdsk/fOd9dt     raw 48tpi entire disk floppy device 
/dev/rdsk/fOq15d     raw 96tpi floppy device
/dev/rdsk/fOq15dt    raw 96tpi entire disk floppy device"

"The very first thing to understand is that these files are NOT the drivers for the devices. Drivers are in the kernel itself (/unix or /xenix or /stand/unix), and the files in /dev do not actually contain anything at all: they are just pointers to where the driver code can be found in the kernel. There is nothing more to it than that. These aren't programs, they aren't drivers, they are just pointers." Unix device pointer explanation

Floppy Disk formats

I've also demonstrated how to do this in a video.