VOGONS

Common searches


First post, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

Yes it is doable. And under 1.4MB

Use hacked and compressed 70kb MS-DOS 7.1 IO.SYS called LZDOS.

PKLITE 2.01

WINFILE.EXE compressed. Use as the main shell.
PBRUSH.EXE compressed.
CONTROL.EXE compressed.
MAIN.CPL rename to exe and compress. Without overlays. Or your icons will not show in Control Panel
CALC.EXE compressed.
REVERSI.EXE from Windows 3.00 just for fun and nostalgia.
SOL.EXE compressed.
WINMINE.EXE compressed.
MULTIPAD.EXE compressed. Smaller and better than NOTEPAD.

I will try to squeeze more out. But now I have a floppy based Windows 3.1 in an uncompressed floppy.

Just for fun.

I will later add MSDOS.SYS and SYSTEM.INI files here.

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 1 of 16, by keropi

User metadata
Rank l33t++
Rank
l33t++

oh! I like this - a mini 3.1 system
maybe have a version with just vga/16c driver as well so that it runs with every vga out there

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 2 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

Yep, it can use both. And the SVGA is updated. So it is universal.
And you can make a batch file, and use many versions on SYSTEM.INI file. The only configuration file in reality, that you need for Windows 3.1
No registry and no win.ini. They are non essentials.

PS. you only need VGASYS VGAFON and VGAFIX.FON files. all the fonts you need for a fully functional Windows. And everything looks just fine.

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 3 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

Update:

Compress all DLL files. Use a DLL or DRV file DOS header with all EXE files. save another 1k. Strange thing is that all 16bit EXE DOS header is long on even with a long text. But DRV and DLL files use a shorter header, that can be used. Almost same as a 32bit Windows EXE.

DRV files do compress, but will freak out Windows, so do not do it.
PKLITE does not let you compress USER.EXE and GDI.EXE, but if you change the name, compress them, and use them in Windows, everything works.

Compressed HIMEM.SYS (Used Windows 98SE version, and even tested with 512MB RAM) with UPX (Little bloated for smaller files, but only thing that packs DOS SYS files). And DOSX.EXE with APACK. (absolute best packer for smaller DOS EXE and COM files) Then renamed DOSX.EXE to WIN.COM

Now I have a functional floppy image of Windows 3.1 in standard mode, with VGA, without the capability to run DOS programs inside Windows (but who needs) and a collection of the most known and iconic Windows 3.xx programs.

I did another version with 256 color universal SVGA and only file manager, control panel and Paint Brush for simple painting needs. Pure DOS does not have a good meat and potatoes paint program in my humble opinion.

I would upload the floppy images here but well "WAREZ ALERT" 😉

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 4 of 16, by VileR

User metadata
Rank l33t
Rank
l33t
Cyberdyne wrote on 2021-02-17, 06:50:

I would upload the floppy images here but well "WAREZ ALERT" 😉

Suggestion, how about a script/batch file that generates this minified version from the install media? Although I guess it's probably not too straightforward to produce.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 5 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

It can be done with original Windows 3.1 install files. Not floppy images, just a directory of all files. Then extract the needed *.??_ files to *.??? files. And then pack and rename. Maybe I will make it happen sometimes. I really do not need it myself, but it would be a nice project to just spend time with. but I have so many of them open.... "best microtools for dos" "windows 2.11 with excel 2 and word 1 boot disk" "bunch of good boot disks for my flashflopies and real flopies" "other GUIs and mini operating systems preinstalled to floppies or just a directory in a hard drive ready to run" "then burn a collection CD or DVD where you just can run everything" "hate that all, need to installed, zipped up thing" "hack up a DOS distribution, for my own use"

But LZ-DOS is only found in the WILD, it is a hacked and lzma packed Windows 95/98 7.10 FAT32 IO.SYS. With all the unofficial fixes and updates.

PS. I really like that you can install all Windows 3.xx and 9x from just a directory in a hard drive or CD-ROM. Try to do it with OS/2 1.xx 2.xx have not cracked it yet. Really like to have a convenient way to install OS/2 1.3 and 2.11. Only floppy install.

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 6 of 16, by keropi

User metadata
Rank l33t++
Rank
l33t++

I have never heard of LZ-DOS before - I've been using for years the "DOS" I extracted from 98SE and did not have any weird FAT32 issues so far
I will try to search it and learn more

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 7 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

Well:

Level 1 Remove the integrated logo from IO.SYS
Level2 Patch IO.SYS for running in Windows 3.1x in 386 enhanced mode.
... Latest level someone hacked and packed Windows 98SE IO.SYS renamed the welcome screen LZ-DOS.
It is functionally and in every way a original IO.SYS in memory and all the functions work.
But the filesize is supersmall!!!

Finding LZ-DOS download is little tricky.....

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 8 of 16, by Jo22

User metadata
Rank l33t++
Rank
l33t++
keropi wrote on 2021-02-17, 14:00:

I have never heard of LZ-DOS before - I've been using for years the "DOS" I extracted from 98SE and did not have any weird FAT32 issues so far
I will try to search it and learn more

There are many obscure and little known DOSes around still. 😀
DOS Plus, Real32, DCP, XDOS, DOS 9.. 😉
Personally, I'm gladly surprised that this is the case. Knowledge is geat, but a little bit of magic and mystery make this world so much more fascinating. . ^^

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 9 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

I use LZ-DOS all the time and it works perfectly as a replacement. I have not totally reverse engineer it, but I made a little "change to it" from this instruction.

""""Now, clip everything up to 0x205 in IO.SYS, since "mov si, 0205h" refers there.

Clip everything after ~04FFh bytes. You should now have a small file around 1300 bytes.
Save it as "DATA". Assemble this [edit: with TASM] and run it.
Omg, look, it "decrypted" into the exact same 1279 bytes that are at 0x202 in MS-DOS 7.10 IO.SYS.

What was the point of the LZ-DOS code? There wasn't. It just obfuscated it.
If you take 1279 bytes from MS-DOS' IO.SYS at 0x202, and paste it into LZ-DOS at 0x202,
over top of the 1279 bytes there...LZ-DOS will boot just fine. Why? LZ-DOS 7.10 is a hacked copy of MS-DOS 7.10.""""

I have removed the encryption code from my version, that´s about it.
Really like to disassemble or recreate that compression thing, but I have not exactly figured out how.

But I will get to it, I have even found an instruction:

Windows 95 and 98 IO.SYS/WINBOOT.SYS consists of three parts: the initial loader, the payload and the device configuration manager executable.

The initial loader (MSLOAD) comprises the first three or four0 512-byte sectors of the file; the first sector begins with the signature MZ,
the second starts with the signature BJ and the last ends with the signature MS.
The FAT boot sector puts the initial loader at real mode address 0070:0000, checks the first two of these signatures,
then starts execution at address 0070:0200. The job of MSLOAD is to copy boot sector variables into its data area (the first sector),
relocate itself to a higher memory address, load the rest of the file starting at segment 0x70 again and then transfer control to 0070:0000.
MSLOAD is immediately followed by the payload, which is the DOS kernel proper, loaded as described above.
Although it is loaded into a single contiguous region of memory, it is too large to fit into a single 64 KiB real-mode segment,
and so the DOS kernel is further split into regions addressed using different segment bases; discovering those will be up to you.
The length of this part can be determined by reading the word at offset 8 of the file, multiplying it by 16 and subtracting the length of MSLOAD.
The device configuration manager (MSDCM1) is a small executable whose purpose is to read the Registry and prompt the user to pick a hardware
configuration if there are multiple configurations defined. As it turns out, it is no accident that IO.SYS begins with the signature MZ,
just like DOS executables; the file is simultaneously a regular EXEPACK-compressed DOS executable,
and the values in the MZ header at the beginning of the file allow it to be executed using interrupt 0x21 service 0x4b,
which will load the third part of the file. If the real-mode kernel detects that it is booting a Windows installation,
the kernel will do just that early in the boot process, before even CONFIG.SYS is processed.2 The word at offset 8 is simply the
‘header length’ field of the MZ header, used both by MSLOAD to determine the length of the payload,
and by the MZ loader to skip over the payload when loading MSDCM.

To recap:

MSLOAD can be disassembled by loading the first four sectors of IO.SYS as a raw binary at address 0070:0000 and placing the entry point at 0070:0200;
The payload can be disassembled by cutting it out of the file, decompressing it (if compressed), loading it starting at segment 0x70,
placing the entry point at the beginning of that segment (i.e. at 0070:0000), and discovering other segments by trial and error;
MSDCM (before Millenium) can be disassembled by using an EXEPACK decompressor and disassembling the output as an MZ executable.

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 10 of 16, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

I wish MS would release Win 3.1 as freeware / open source.

I would be so much fun to distribute Win3.1 with DosBox, ect.

I think I tried the Boot Win3.1 off a floppy experiment in the past, isnt it painfully slow booting?

Check out DOSBox Distro:

https://sites.google.com/site/dosboxdistro/ [*]

a lightweight Linux distro (tinycore) which boots off a usb flash drive and goes straight to DOSBox.

Make your dos retrogaming experience portable!

Reply 11 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

Not really, a bit of nostalgia, it boots from a 486/Pentium as from a 286 with a hard drive. But after it loads, it works just fine. And Windows 3.x programs are so small, that it takes just few second to load a program.

Well we saw first Word and Excel for Windows 2.xx to be source released. And MS-DOS 2.11 Maybe someone will live to see the day that MS-DOS 6.21 and Windows 3.1 will be released.

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 12 of 16, by WolverineDK

User metadata
Rank Oldbie
Rank
Oldbie
Cyberdyne wrote on 2021-02-22, 10:03:

Well we saw first Word and Excel for Windows 2.xx to be source released. And MS-DOS 2.11 Maybe someone will live to see the day that MS-DOS 6.21 and Windows 3.1 will be released.

The source to MS-DOS 3.3 and MS-DOS 6 has been leaked(in the big 42.9 GB source leak). So if M$ releases the all sources to MS-DOS that would be cool, but working on leaked source code is as far I am aware a big no-no.

Reply 13 of 16, by Cyberdyne

User metadata
Rank Oldbie
Rank
Oldbie

In the cozy place of your eastern europe home, you can do "allmost" anything. 😉

I am aroused about any X86 motherboard that has full functional ISA slot. I think i have problem. Not really into that original (Turbo) XT,286,386 and CGA/EGA stuff. So just a DOS nut.
PS. If I upload RAR, it is a 16-bit DOS RAR Version 2.50.

Reply 14 of 16, by Jo22

User metadata
Rank l33t++
Rank
l33t++
BinaryDemon wrote on 2021-02-20, 18:55:

I wish MS would release Win 3.1 as freeware / open source.

I would be so much fun to distribute Win3.1 with DosBox, ect.

Windows 3.1x is still somehow commercially used, though. 🙁
As a component of WindowsOnWindows (WoW) in 32-Bit WinNT and Win-OS/2 in Ecomstation&ArcaOS (ex Blue Lion OS).
https://en.wikipedia.org/wiki/ArcaOS

Edit: IBM originally had a contract with MS regarding Windows 3.x, also.
It had full access to the source and was allowed to do modifications.
That way, they were able to make Win-OS/2 and make Win32s 1.25 compatible.
Not sure how this would affect making it Open Source. Maybe it has a positive effect, maybe a negative (intellectual prop. issues).
Anyway, this means that the 3.1 sources are safe, at least. 😉

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 16 of 16, by mr.cat

User metadata
Rank Member
Rank
Member
Jo22 wrote on 2021-03-18, 08:44:
Windows 3.1x is still somehow commercially used, though. :( As a component of WindowsOnWindows (WoW) in 32-Bit WinNT and Win-OS/ […]
Show full quote
BinaryDemon wrote on 2021-02-20, 18:55:

I wish MS would release Win 3.1 as freeware / open source.

I would be so much fun to distribute Win3.1 with DosBox, ect.

Windows 3.1x is still somehow commercially used, though. 🙁
As a component of WindowsOnWindows (WoW) in 32-Bit WinNT and Win-OS/2 in Ecomstation&ArcaOS (ex Blue Lion OS).
https://en.wikipedia.org/wiki/ArcaOS

Edit: IBM originally had a contract with MS regarding Windows 3.x, also.
It had full access to the source and was allowed to do modifications.
That way, they were able to make Win-OS/2 and make Win32s 1.25 compatible.
Not sure how this would affect making it Open Source. Maybe it has a positive effect, maybe a negative (intellectual prop. issues).
Anyway, this means that the 3.1 sources are safe, at least. 😉

That's a good point! I do remember there being some talk about open sourcing OS/2 being an impossibility because of the MS deal.
In a nutshell, IBM would have needed a permission from MS to do that. And with MS it might be the same, if they have some 3rd party stuff in there that could prevent open sourcing anything.
(even if they wanted to, which I'm not sure about even though they *have* open-sourced some of their stuff)
At the very least, the process would be a complicated and slow one.