Update: 6 March 2018: Minor fix with keyboards. Now supports unlimited types and counts of keyboards attached, especially multiple USB keyboards.
Update: 4 March 2018: Thanks to a fellow reader (thank you Michael), I have fixed a few issues with 64-bit machines, as well as updated the USB's HID and other small issues here and there. If you haven't tried the hd.img yet, please do. If you did and it didn't work, please try again.
I haven't updated my bootable FYSOS image in some time, so I thought I would include it now. You can get it from here (~1.00Meg).
Lots of updates and improvements have been done:
- USB Updates:
- Added ISO transfers to all four controller types
- Added Video Camera capabilities
- Added UASP drive support
- Improved connection detection
- Improved Root Hub enumeration
- Improved USB Legacy Support
- Improved HID support
- Greatly improved external HUB support
- Lots of other improvements
- Media Updates:
- Improved AHCI/SATA support
- Improved IDE support
- Improved the virtual file system
- IO Updates:
- Improved PS/2 support
- Improved ACPI support
- Improved Multi-Processor support
- Improved PIC support
- Improved APIC support
- Added/Improved HPET support
All of these additions and improvements have made it possible to document them within their respected books, especially Volume 8. I have added so much more information, corrected some information, and per a request from a reader, added many more images to make the understanding a little bit easier. I hope to have a new edition out within a few months.
Most of the work has been on improving and documenting the USB. The bootable image listed above (or below) will currently only enumerate Mass Storage Devices (MSDes) and external hubs, simply because I have the others commented out. I have a few small things to finish with the change in HID device support before I can safely use them. The USB video works quite well, but relies upon a few hard coded items. Therefore it is commented out too. See below in this blog for images and more information on the video support.
The .zip file (~1.00Meg) contains both a floppy image (1.44Meg), as well as a small (5Meg) hard drive image ready to install on to a USB thumb drive. I use Rufus and it works quite well.
I would really appreciate it if you installed the hd.img file to a thumb drive and booted it on your test machine[1].
Then once there is no more scrolling of data, press the enter key to give you a prompt. Usually takes about
30 seconds or so, depending on the hardware you have installed. Then change to the flash drive:
USB00:<enter>
and type
USB00:\>wd<enter>
This will write a text file to the thumb drive of all characters previously written to the screen.
I would really appreciate it if you sent me that DEBUG.TXT file.
fys [at] fysnet [dot] net
A few other notes: The GUI is not currently included with this image. However, at boot time, you can press F8 during boot (light blue screen) and FYSOS will let you select a graphics screen. Since no actual images are included with this image, not much will be shown, but it is there if you wish to do so. (It will select a 16-bit graphics screen by default, if a suitable one is found)
Thank you.
[1]As always, I do not suggest you boot it on your flagship, your development machine, or on a machine that you don't want damaged. My code does not intentionally do any damage, but it is not thoroughly tested. As always,
**** Use at your own risk ****