Author Topic: Already there: a bootable OS/2 Stick - FreeOS2Loader  (Read 16837 times)

Sigurd Fastenrath

  • Hero Member
  • *****
  • Posts: 597
  • Karma: +29/-0
  • OS/2 Versus Hardware - Maximum Warp!
    • View Profile
Already there: a bootable OS/2 Stick - FreeOS2Loader
« on: March 12, 2017, 02:26:04 pm »
Today I start my new Project (inspired by my own words in the AN thread  ::)  ):

I will try to create a bootable OS/2 Stick with a working minimal OS/2 Environment, that - in the second stage shall give the function to install an OS/2 clone and be used as a recoverytool in Addition. I will use therefore mostly the Procedere that is decribed in the readme of the hdd4 part of QSINIT.

What I plan to use for this:

- the QSINIT Loader and the HDD4DISK Driver
- the Programm bootos2 (yes, there is the very good program booatble/2 around, but I am still not used to it, sorry, may be I will incorporate it later)
- I Need a updated Warp 4.52 Installation
- from that I will create a minimal pure OS/2 Installation, with ACPI, AHCI, USB Support and so on
- at least it should include DFSEE and the OS/2 commander
- Hardware: my X200T with Dockingstation (DVD)


Steps to go:

1. creating 2 Primary partitions, each 2 GB size
2. Install on the first one (Drive Letter C:) a native OS/2 System
3. Update that System with lastest Drivers and systemfiles
4. Add to this DFSEE and OS/2 Commander
5. use bootos2 to create a minimal pure OS/2 System (without DOS/WIN16 Support), FAT on the second Partition with driveletter O:
6. Check what Addition has to be done on O:
7. ZIP the O: Installation
8. create a bootable QSINIT USB Stick according to the Readme
9. try to add a second persistant Partition on that stick (for later use as "Clone Reservoir")
10. add a boot menue to the stick
11. copy the zipped Installation (later may be more different installations)
12. Reboot and cross fingers  ;)


Timetable:

I have no specific timetable and will do this during my rare spare time, but today is a good day to start and I have some hours free :) I think it will not be to timeconsuming to Setup the initial two Systems, let's see.


I will Report my Progress.

« Last Edit: March 19, 2017, 09:53:23 pm by Sigurd Fastenrath »

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1599
  • Karma: +4/-2
    • View Profile
I have done this, with eCS 2.2b2. It is not very difficult. You need to follow the instructions in the QSINIT package, and create a USB stick with a small (50 MB, or so) FAT16 partition, where you put the QSINIT boot support, plus a ZIP file that contains the boot drive contents. The RAMDISK can be FAT16, FAT32, or HPFS, but the QSINIT loader can only unzip into FAT16, or FAT32. Since OS/2 cannot boot from FAT32, you must use FAT16, with all of the restrictions that that causes.

The quick, and easy, way to create the boot drive, is to install a basic OS/2 (eCS) system, using the drive letter that you wish to use with the USB boot (Z: is common). I used bootAble to create a maintenance partition. ZIP it up, and put it in the FAT16 partition on the USB drive. Make the rest of the USB stick HPFS, or JFS, and put the rest of what you need there. Adjust the CONFIG.SYS etc. to match, before ZIPing it.

When you boot (the system needs to be capable of booting from a USB stick), it loads the QSINIT loader, which unzips the file into it's RAMDISK (which can be above the 4 GB mark, if you have that much memory). and then boots from it. A full install is possible, if you have enough memory for the RAMDISK, and you make the FAT16 partition big enough to hold the ZIP file, but it is better to put anything that needs long file names into the HPFS, or JFS, part of the stick (I haven't tried it, but it should be possible to do the same with a USB HDD).

Some experimenting will probably be required.

HTH...

Sigurd Fastenrath

  • Hero Member
  • *****
  • Posts: 597
  • Karma: +29/-0
  • OS/2 Versus Hardware - Maximum Warp!
    • View Profile
I have done this, with eCS 2.2b2. It is not very difficult.

Yes,

this is exactly what I am going to do once I have time for it, maybe next Weekend.

BTW: some very intersting work has already been done here: http://www.os2world.com/wiki/index.php/Installing_RAMFSOS2. I wonder if one could base something on this work....
« Last Edit: March 15, 2017, 09:37:32 am by Sigurd Fastenrath »

Sigurd Fastenrath

  • Hero Member
  • *****
  • Posts: 597
  • Karma: +29/-0
  • OS/2 Versus Hardware - Maximum Warp!
    • View Profile
Well, made first tests with the FreeOS Loader, it Looks very promising!

I am wondering that this is around since 2010 and I have not heard about it.

The USB Sticks boots, but later I got an error in FAT32 Driver, I will have to dig more, next Weekend  ;)

But the Stick offers so much opportunities!!! As far as I can see it - if it boots to the WPS - one can use a full OS/2 Warp 4 System with WLAN Support and a lot of Supplement Software - GREAT!

 I wonder if this FreeLOADER file could be assumed as being legal Software.

Valery Sedletski

  • Sr. Member
  • ****
  • Posts: 368
  • Karma: +2/-0
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #4 on: March 20, 2017, 01:35:26 am »
2Sigurd:

> I wonder if this FreeLOADER file could be assumed as being legal Software.

Why not legal? It is based on GRUB, indeed, under GPL license, in fact. I wrote it for osFree project, and use for universal bootable CD/flash/etc. It can be used as a boot CD or maintenance system, booted from a hard disk too. Or, as a live OS/2 system.

PS: Which error in fat32 driver, btw?

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4981
  • Karma: +109/-1
    • View Profile
I wonder if this FreeLOADER file could be assumed as being legal Software.

As long as the author never saw any source code and reverse engineered it, it should be legal in most jurisdictions as I understand the law. Of course I'm not a lawyer and some countries may not allow reverse engineering.

Valery Sedletski

  • Sr. Member
  • ****
  • Posts: 368
  • Karma: +2/-0
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #6 on: March 20, 2017, 01:49:28 am »
2Dave Yeo: reverse-engineering? Why? It is open source. Source code is available from osFree svn: https://sourceforge.net/projects/osfree/, http://osfree.org. Maybe, you confused it with OS/4?

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4981
  • Karma: +109/-1
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #7 on: March 20, 2017, 02:58:09 am »
Isn't it a replacement for the os2ldr? If so you must have had to examine how os2ldr worked.

Valery Sedletski

  • Sr. Member
  • ****
  • Posts: 368
  • Karma: +2/-0
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #8 on: March 20, 2017, 03:44:04 am »
2Dave Yeo: No. It is universal multiboot compliant loader, like GRUB.  (but it is began from David Zimmerli stub of os2ldr reimplementation from EDM/2, called FreeLDR, and preserved this name). FreeLDR preloads a number of files to memory, in multiboot compliant format. Then OS/2 booter is started from it. OS/2 booter takes preloaded files from memory and creates special minifsd and microfsd, which retrieve preloaded files from memory and boots OS/2. Then minifsd passes control to specified IFS and booting continues as usual. So that, we can boot from different filesystems. FreeLDR preloads files to memory (in multiboot-compliant format) from supported filesystems and then boot process continues using an IFS. OS/2 booter (bootos2.mdl file) acts as universal microfsd/minifsd pair for different filesystems. So far, I successfully tested the following IFS'es: FAT32, hpfs, jfs, ext2-os2, vfat-os2, ramfs. The Live OS/2 boot disk uses ramfs ramdisk to boot from. The files are first preloaded to memory in multiboot-compliant format (as multiboot modules). Then ramfs disk is mounted, the files are copied to ramfs and boot process continues from there. So, it uses another method of ramdisk booting. In contrast with Veit's memdisk, I use an IFS-based ramdisk, and files are taken directly from the filesystem, no need for packing files to *.pk archives. But like memdisk, it uses the el-torito boot without floppy emulation. Also, as FreeLDR is GRUB-compatible, it can boot linux kernel via linux.mdl loader too. It can chainload bootsectors and DOS kernel or NTLDR via chain.mdl loader. It can boot L4 kernel via its own loader, and other multiboot-compliant kernels too. The multiboot support code and code for reading different filesystems is ported from GRUB. It should also serve as a microfsd for os2ldr, but it is broken atm. Multiboot support allows to boot different OS'es or different single OS configurations from a single menu, which is defined in a number of config files. For example, the Live OS/2 disk can boot: 1) FreeDOS from diskette image via memdisk (not Veit's memdisk, but Peter Anvin's memdisk taken from SysLinux) 2) memtest86, which is loaded via linux.mdl 3) three OS/2 configurations via bootos2.mdl: a) Tshell b) PM/WPS/Warpcenter c) PM/WPS/XWP.

PS: Originally, it is needed for osFree project, to boot L4 microkernel and to be more OS/2-like at the same time. osFree develops an L4-based OS/2 personality, so we needed the method of booting L4. L4 uses GRUB usually, but we wanted more OS/2-like boot with microfsd etc. And also it made universal enough to boot OS/2 too.

PPS: Also, it uses features ported from a fork of GRUB by Adam Lackorzynski (one of L4 Fiasco developers from Technical University of Dresden). These features (toggle command and GRUB variables support) allow to set boot options from main menu. You press a key and it toggles different values of a variable. Then variables are substituted into boot scripts. Also, these variables can be passed into config files via text preprocessor (like #define in C preprocessor does). For example, it can be passed to config.sys.  Also, the files like config.sys can contain directives like !include, !ifeq, !ifneq etc, so you can control different parameters passed to config.sys and include/cut pieces of config file depending on that. The idea to use text files preprocessor is used in Veit's os2csm too. But I use more human-readable format for text preprocessor directives. And Veit intercept's int 13h during config.sys reading. I just patch config.sys in memory after preloading it by freeldr.mdl.

PPPS: Also, FreeLDR can start from QSINIT/os4ldr menu on HPFS or JFS filesystems. (HPFS support is added into FreeLDR too, also it supports FAT, ext2, ntfs, JFS, ISO9660 and different UNIX filesystems, like reiserfs, XFS, UFS2, FFS etc).
« Last Edit: March 20, 2017, 04:15:51 am by Valery Sedletski »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4981
  • Karma: +109/-1
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #9 on: March 20, 2017, 06:57:42 am »
Thanks for the detailed explanation. I'll have to look closer

Sigurd Fastenrath

  • Hero Member
  • *****
  • Posts: 597
  • Karma: +29/-0
  • OS/2 Versus Hardware - Maximum Warp!
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #10 on: March 20, 2017, 09:33:06 am »
2Sigurd:

> I wonder if this FreeLOADER file could be assumed as being legal Software.

Why not legal? It is based on GRUB, indeed, under GPL license, in fact. I wrote it for osFree project, and use for universal bootable CD/flash/etc. It can be used as a boot CD or maintenance system, booted from a hard disk too. Or, as a live OS/2 system.

PS: Which error in fat32 driver, btw?

Hi,

thanks for the detailed explenations - and the work you have done! I may have miswritten by using the word "wonder" - I was just thinking and hoping how great it would be if it is a free developed tool (and so might be used by everyone without legal issues).

Thank you very much, I will have a closer look regarding this error and Report here. As I see there is kernel 14.104a used within the bootsystem, I may replace it with a more recent one.




Valery Sedletski

  • Sr. Member
  • ****
  • Posts: 368
  • Karma: +2/-0
    • View Profile
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #11 on: March 20, 2017, 03:54:04 pm »
2Sigurd Fastenrath: The default kernel is 14.104a_UNI. But also SMP kernel and OS/4 kernel and debug are supplied too. Also, default loader is QSINIT, but you can choose IBM's or OS/4 loaders. -- These can be choosen in the boot menu. And the default and fail safe configuration is without SMP. But you can also choose to use a PSD (os2apic.psd/os4apic.psd/acpi.psd by Pasha/acpi.psd by David Azarevicz). Some components are optional and not supplied on the disk for legal issues. It's up to an user to add them manually, just by copying to needed directories. These components include ntfs.ifs, Panorama and ACPI. (Please read readme.eng how to add them yourself). You also can add many programs yourself, like Netdrive, RSJ CD writer, DFSee, Mesa2 etc. For that, you need to copy programs to \apps directory, add the path to its directory to paths.sed and add WPS objects creation .rc file to rc.cfg. There's a big collection of ready to use .rc-files supplied with the boot disk. BTW, I use much more programs on my own bootable flash disk. The official distribution is just limited in size and commercial programs are not included (but there are still some shareware and abandonware programs).

karotlopj

  • Guest
Re: Already there: a bootable OS/2 Stick - FreeOS2Loader
« Reply #12 on: May 23, 2017, 09:10:54 pm »
Today I start my new Project (inspired by my own words in the AN thread  ::)  ):


It's over a year ago since I found a USB boot image which could boot up to an OS/2 cmd prompt....

Unfortunately it came with some codepage which I didn't understand and it was prebuilt for use with MEMDISK.

If anyone has any info on how to build it, I'd appreciate knowing how to put it together.

Just found a post of mine asking exactly this...

http://www.os2world.com/forum/index.php?topic=1048.0

..and haven't made any progress in a year.

karotlopj

  • Guest
I have done this, with eCS 2.2b2. It is not very difficult.

Yes,

this is exactly what I am going to do once I have time for it, maybe next Weekend.

BTW: some very intersting work has already been done here: http://www.os2world.com/wiki/index.php/Installing_RAMFSOS2. I wonder if one could base something on this work....

I've only just discovered and installed RAMFSOS2. Looks  like a really powerfull if not complicated tool. At the moment I can't get passed the locatecd.sys msg. I have changed the presets but still get the

Insert the OS/2 boot disk and press any key.

msg.  Can't get past this. Any suggestions?