Releases: oerg866/win98-quickinstall
v0.9.4
Main repository
- Fix corrupted files with USB images due to broken size calculation
- Fix USB image being created without being asked
- Fix VLB SCSI / IDE adapters not working
- Rework large parts of installer
- Memory leak fixes
- Agressive & Asynchronous readahead to speed up installation
- Rewrite UI with new custom minimal text UI library
- Massively reduced installer size by no longer requiring libdialog/ncurses
- Reworked lsblk interface, HDD scanning is now much faster
- Add firmware support to linux kernel to support additional SCSI adapters (e.g. Advansys 3550)
- Build process more stabilised and simplified, now buildable with GCC 11+
- Better dependency descriptions
- Fix sysprep xattr requirement for Windows hosts
- Potential improvement on stability for FAST device detection
Driver library (Base)
- Properly distinguish Sil3x12 RAID/NON-RAID drivers
- Fix VIA 686 southbridge AC97 being installed with no actual driver
- Add Silicon Motion SM712 driver
- Fix CAT file warning for SiS 6326
- Update ESS1938 driver
- Add Atheros L1 and L2 PCIe NIC drivers (NDIS2)
- Add 3c90x/3c920 driver
- Add Atheros AR8151 PCIe NIC driver (NDIS2)
- Move Trident 4DWave to EXTRA driver lib.
- Update OPTi 929 driver
- Remove FA311 driver in favor of generic DP83815x driver
- Add Realtek 8100E-H PCIe NIC drivers (NDIS2)
Driver Library (Extra)
- Add Trident 4DWave driver with soundfonts
- Add experimental USB 2.0 driver (From NUSB)
Reference images
- Add new 98Lite MICRO + DirectX 8.1 image variant
- Fix DirectX 9 installability for 98Lite MICRO images
v0.9.3
v0.9.2
Changes to main repository
mercypak: Fix invalid file dates being saved due to host machine DST.
linux: Enable Serverworks ATA controller support.
Enable kernel unicode support
installer: Fix crash after 2x trying to install on source partition.
installer: Only allow partition selection to succeed if filesystem is…
Add UTF8 support to installer.
linux: Fix international filenames being mangled on installation.
Sysprep/mercypak/dd/syslinux python port, remove dependencies, add mu…
installer: Fix potential buffer overflow in util_readFirstLineFromFil…
Update readme
Bump version number to 0.9.2
Update win98-driver-lib-base
Update building readme
sysprep/syslinux: fix erroneous filename print output
sysprep: Fix Windows ME CAB dir not being found.
sysprep:fix misleading error message when CAB files aren't found
sysprep: Fix multiple files matching a wildcard not being deleted.
sysprep: Add more files to the junk cleanup
sysprep/registry: Fix broken VGA device entry if source VM had ISA VG…
init.sh: remove mtools from dependencies.
Fix outdated message in build.sh
Changes to win98-driver-lib-base
v0.9
Changes in main repository
- Fix unnecessary file/dir prompt in sysprep batch script.
- Add known locale problem to FAQ.
- Update win98-driver-lib-base
- Update win98-driver-lib-extra
- installer: Add extra message box to tell user to format created parti…
- Bump version to 0.9
- Ignore F8 presses when booting (in case you hammer it for safe mode :-))
- tools: update drivercopy
- Rewrite installer to use mmap.
- sysprep: Fix reboot on non-98Lite installs (for real this time...)
- installer: Fix crash when driver pack doesn't exist.
- sysprep: Fix missing reboot if base system isn't 98Lite or in C:\WIND…
- Add a FAQ section to README
- sysprep: Remove Win386.SWP from OS Root too.
Changes in tiny-floppy-bootloader
Changes in win98-driver-lib-base
- Add Non-RAID driver for Sil3112
- Add S3 Trio3D 2X driver.
- Remove more unnecessary subsystem entries from INFs.
- Remove subsystem IDs from Voodoo3 driver.
- Fix broken S3 Savage4 Driver.
- Fix missing RICHED20.DLL file in Voodoo2 driver
- Add Highpoint 374 driver
- Add Highpoint 366 driver
- Add Highpoint 302/370/372 driver
- Remove generic Highpoint drivers
- Add ICPlus IP100 + IP1000 drivers
- Add Atheros AR8131 driver
- Add Intel 740 driver
- Add Trident 9385/9382 driver
- Add Trident 9320/9440/9660/9470/9783/9388/9753 driver
- Add Trident 3DImage 9750 / 9850 driver
- Add Trident Wave4D Driver
- Add ESS Solo-1 driver
- Fix spurious zone identifier file
Changes in win98-driver-lib-extra
v0.8.1
Changes to win98-quickinstall:
- Add USB config to basic floppy disk image.
- (Attempt to) Fix USB boot not finding install media.
- sysprep: Fix linux sysprep not working with empty extra driver library
- sysprep: Fix linux sysprep not working with relative path.
- installer: Remove scratch buffers and directly operate on ring buffer.
- installer: Compile with optimizations
- installer: bypass scratchbuffer, make ringbuffer able to r/w FILEs
- make fwrite unlocked too
- Test changing file descriptors to FILE * streams
- Fix typo in README.md
v0.8
NOTE: There is a typo in the README. To create a USB image, just use:
makeusb.bat <Output USB image file>
(Windows)
./makeusb.sh <Output USB image file>
(Linux)
Changes in main repository
- add missing syslinux bulid script to init.sh
- Bump version to 0.8
- Update gitignore
- Update readme and build instructions.
- Update bootloader and driver libraries.
- Add DOS + LOADLIN based boot floppy for slow PCs.
- Add support for installing from hard disks & USB flash drives.
- Split kernels: floppy boot / less compressed & feature rich CD-ROM va…
- busybox: Trim down to needed tools only to reduce initrd size.
- Make OS root directory and target ISO selectable.
- Remove the need to mess with registry files before building image.
- instlaler: Fix progress bars
- tools/drivercopy: Fix drivers with same inf name overwriting each other.
- Update bootloader.
- Update base driver library.
- installer: Add proper UI for disk formatting, wraps around mkfs.fat o…
Changes in tiny-floppy-bootloader
- Add adaptation notice as required per GPL (I think???).
- Make build script take parameters instead of hardcoding everyhthing.
- Remove 0xee port read method of enabling A20.
- Remove non-floppy boot sector code.
- Add proper code for enabling A20 via KBC, safeguard KBC ready waits.
- Add safer methods to enable A20 gate.
Changes in win98-driver-lib-base
Changes in win98-driver-lib-extra
v0.3
Changes to win98-quickinstall:
- linux: Add Tekram DC-390 and INITIO 162x drivers.
- installer: build UI with libdialog instead of dialog command
We have progress bars now! - installer: Slight ringbuffer copy speedup
- installer: Make memory estimation more conservative, fixes crash on 24MB systems
- Copy essential files to ram disk before starting the installer.
Massive speedup due to lack of seeks during the installer. - installer: Fix smaller than expected reads being interpreted as EOF.
Fixes "THREAD DONE" freeze on some weird IDE controllers/drives
Changes to win98-driver-lib-base:
- Change buggy Myson MTD-803 driver
- Separate AD1817 from AD18xx driver and add 1815/1816 driver with synth.
- Add Analog devices AD1812 driver
- XGI Volari, ITE821X Vortex86, Adaptec 160, Accton NICs, Mozart 601, RDC6040
- Add Tekram DC-390 and Initio 9xx drivers.
Changes to win98-driver-lib-extra:
v0.2.2a
v0.2.1
v0.2
Windows 98 QuickInstall ISO Creator Package
(C) 2012-2023 Eric Voirin (oerg866)
Here are the steps to create an ISO:
- If you are on linux, you must install the following prerequisites:
wine cdrtools p7zip-full
- Install Windows 98 in a virtual machine or emulator, just as you want it.
I recommend using 86Box using the following configuration:
* Machine
* Machine Type: Slot 1
* Achine: [i440BX] ABIT BF6
* CPU type: Intel Pentium II (Deschutes)
* Memory: 64 MB
* Display:
* Video: [AGP] 3dfx Voodoo3 3000 (so that there is no driver contention)
* Network:
* NONE, VERY IMPORTANT TO MAKE SURE NETWORK DRIVER SETUP STAYS INTACT
* Hard disks:
* IDE (0:0), raw image, big enough to install the operating system
*** NOTE: The operating system must be installed from the HARD DISK
*** and it must contain a folder containing the Windows 98
*** CAB files from the CDROM. Otherwise, drivers can not be
*** slipstreamed (yet).
*** NOTE: It is recommended that NO extra drivers are installed in this
*** VM.
- Run the Pre-Setup registry file.
This is found in the "_RUN_BEFORE_SYSPREP_" folder.
Use "presetup.reg" if you wish to have the full Non-PNP device detection
phase during installation. (Recommended if you intend to install on 486
and early Pentium systems)
Use "presetup_skip_pnp_init.reg" if you wish to skip the non-PNP device
detection phase. This saves a lot of time during installation.
Recommended on Pentium and above.
- Shut down the virtual machine and *DO NOT TURN IT BACK ON*
- Use 7zip or an imaging software and extract the entire root of the
partition you installed Windows 98 to.
Extract all files into the "_OS_ROOT_" directory.
On Windows, you can open the image file using the 7zip File Manager.
On Linux, you can do this with by using '7z' from the p7zip-full package.
'7z x -o_OS_ROOT_/ /path/to/image/file'
*** NOTE: Only *one* Windows directory is allowed, and only *one*
*** CAB directory.
*** Windows directory is detected by finding "WIN.COM"
*** CAB directory is detected by finding "PRECOPY2.CAB"
- Copy drivers that you want slipstreamed to the "_DRIVER_" directory.
*** NOTE: This directory is already filled with a curated selection
*** of drivers.
*** You can remove these, if you wish.
- Copy extra drivers that will not be slipstreamed but added to the
"_EXTRA_DRIVER_" directory.
*** NOTE: These drivers will be processed in the same way as the
*** slipstreamed ones but will not be copied to the hard drive
*** during installation.
*** This folder will be named "DRIVER.EX" on the ISO. You can
*** point the Windows 98 hardware wizard to this folder and
*** the drivers will be found and installed correctly.
- Add any extra files you wish added to the ISO to the "_EXTRA_CD_FILES"
directory.
This can include drivers that you do not wish to be processed with
the QuickInstall tools, e.g. drivers that contain extra software.
- Run the following command to build an ISO:
Windows: sysprep.bat
Linux: ./sysprep.sh
- The "__ISO__" directory will contain the output iso.
- Do not hesitate to contact me on Discord if you need help:
oerg#0866
- Enjoy!