Author Topic: Experiment: aWarp - Atrocious Warp - Moving Paths  (Read 7501 times)

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4714
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Experiment: aWarp - Atrocious Warp - Moving Paths
« on: August 21, 2015, 06:17:16 pm »
Hi

Some days ago I started my experiment called aWarp based on a VM and as a extensions on my other experiment "Experiment: Moving the OS/2 Directory Structure"

So the goal of this experiment was to create an OS/2 Warp 4.52 (with fixpacks) VM machine on VirtualBox and moving the locations of all files of the OS/2 components to a directory structure that I choose. It was basically to move the directories, updated CMD files and INI files.

You can found information about this experiment at:
- AWarp
- AWarp Directory/Files Structure
- AWarp Config.sys

People may like it or not, but this is just an experiment, there is no need to freak out or start running to the street like it is the end of the world.

ISSUES.

I found these issues or stoppers while doing this.

1) MPTS.EXE is broken. Even that I updated IBMLVL.INI (IBM_LANX -> PATH to C:\OS2\SYSTEM\IBMCOM) the GUI is not loading correctly. It loads the Multi-Protocol Tranport Services window in blank.

2) UNICODE.SYS has hardcoded the path of C:\LANGUAGE. I don't know a solution for this maybe:
 - An alternative for UNICODE.SYS can be produced
 - A binary patch for UNICODE.SYS can be produced to have a more flexible path option.
 
3) Has anybody tried to consolidate the INI's of OS/2 in a single directory? I haven't tried that yet.

There may be a lot of other things are broken that I'm not using right now.

Suggestions and help on this three issues that I'm having is welcome.

Regards
« Last Edit: August 21, 2015, 06:20:25 pm by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Roderick Klein

  • Hero Member
  • *****
  • Posts: 655
  • Karma: +14/-0
    • View Profile
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #1 on: August 21, 2015, 09:57:27 pm »
On the topic of MPTS.
To try and find your problem with MPTS. See if you can find a copy of the driver fwatch.sys (I think it was IBM EWPS). It hooks a file API in the kernel. You can then see which files are opened by applications. It also reports failures of files it can not find. Guess somewhere another of these static paths is causing trouble, no clue.

Did you also put a copy of the IBMCOM directory BACK in the root directory if MPTS will then start ?

Years ago when working on getting SNAP to boot from CD, I found many entries in the video DLL's pointing to \OS2\SVGADATA.PMI (its readable as plain text). Its an example of how static paths are readable in DLL's.

When you do get MPTS running and change something (NIC for example) and exit MPTS, it might stick a lot static paths again in the config.sys. Search for example in \IBMCOM\DLL\LAPSPM.DLL for the string \IBMCOM\protocol\lanpdd.os2.
There is a whole block of what looks entries to be put in the config.sys. Static path + drive letter...

As for UNICODE, thats out of my skill set to know how you could fix this.
Unicode.sys seems it has code to detect the boot drive or uses an API to detect this.

If you use a something like file commander and search the OS2 directory for *.dll and \language text string.
UCONV.DLL UNIKBD.DLL have the same entry "C:\language"  so they most likely need be patched also.

I have never tried putting *all* OS/2 INI files into a single directory.  No clue if you could get that to work.
MMOS/2 seems to be less of a trouble maker as it seems to honour set the set MMBASE= variable in the config.sys.


Roderick

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4788
  • Karma: +99/-1
    • View Profile
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #2 on: August 22, 2015, 05:00:32 am »
2) UNICODE.SYS has hardcoded the path of C:\LANGUAGE. I don't know a solution for this maybe:
 - An alternative for UNICODE.SYS can be produced
 - A binary patch for UNICODE.SYS can be produced to have a more flexible path option.
 

UNICODE.SYS seems to actually have "\language\codepage\" as the hard coded path, which explains why it works here on E: and N:. Still bad coding.
I'd guess you could use a binary editor to edit the hard coded path, as long as the path has the same number of characters or less with trailing nulls (zeros) for padding, it should work. Maybe \os2\lang\codepage\ if you want it under \os2. There's also an error message that would also need editing and I'm not sure null padding would work for an error message.
Edit: as Roderick mentions, you'd also have to binary edit a couple of DLLs as well as some exes such as minilvm. As some point to other locations under \language it may be best to just change that part of the path.
« Last Edit: August 22, 2015, 05:15:25 am by Dave Yeo »

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4714
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #3 on: August 23, 2015, 05:46:41 pm »
Thanks for the replies.

I tried what Roderick says, moving back IBMCOM to the root. For the moment I haven't got any progress. It worked moving IBMCOM on a eCS 2.1 VM and not on Warp 4.52. I have to keep checking, since eCS has some other exe's on IBMCOM.

About "UNICODE.SYS" I tried with KON (Hex Editor) to change the path, it worked, but the since I have to maintain the same size (?) of the file I'm a little bit limited there. I don't know much about the rules of editing binaries this way, I don't know if there is a way on how to bend this rule.

About the INI's. Anybody tried if "IBMLVL.INI" can be moved away from the root path?

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Roderick Klein

  • Hero Member
  • *****
  • Posts: 655
  • Karma: +14/-0
    • View Profile
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #4 on: August 23, 2015, 11:11:54 pm »
Thanks for the replies.

I tried what Roderick says, moving back IBMCOM to the root. For the moment I haven't got any progress. It worked moving IBMCOM on a eCS 2.1 VM and not on Warp 4.52. I have to keep checking, since eCS has some other exe's on IBMCOM.

About "UNICODE.SYS" I tried with KON (Hex Editor) to change the path, it worked, but the since I have to maintain the same size (?) of the file I'm a little bit limited there. I don't know much about the rules of editing binaries this way, I don't know if there is a way on how to bend this rule.

About the INI's. Anybody tried if "IBMLVL.INI" can be moved away from the root path?

Regards

Your best bet I think is to see if you kind find fwatch.sys. If you use it in a VM you can setup the serial port as a file.

The only thing I have noticed with Fwatch is that for some reason fwatch.sys sometimes conflicts with video GRADD based drivers. I have never been able to figure out why. As on some systems loading FWATCH.SYS with GRADD based video drivers worked! So if you do get stuck run setvga. To make live even more fun you  have the classic VGA driver and VGAGRADD. So run setvga! If you run ALT F1 recovery on MCP it will install VGAGRADD. So if you do run into trouble watch this little detail :-)

Then when you do have fwatch working you see in the text file a succesfull MPTS start and the one failing. Hoping you can by comparing the text output see where MPTS is stuck.

The benefit of FWATCH is that its "user friendly" way to debug OS/2 file I/O. At least you do not need something like the kernel debugger. Which is slightly more complex then fwatch.sys. The thing however with fwatch is that you get a lot of data. As you can not filter on for example MPTS in the data that MPTS outputs.

Good lcuk

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4714
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #5 on: August 23, 2015, 11:37:54 pm »
Hi Ivan.

I'm sorry, since I have admin level, I don't know why but I screwed you post by writing on top of it. Sorry it was not intentional.

This is just an experiment. I can not say if I'm right or wrong, it is just the way I see it.
I consider that the INIs are not Operating System files, I see INIs as the way the user configure his way to use the operating system. This is why my INIs differ from anybody else INIs. But again, this is just a personal preference, it does not mean it is right or wrong.

Why? It is just an experiment, you don't need to ask why now... maybe later :)

So for now I concentrate only on the issues.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4714
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #6 on: August 23, 2015, 11:38:31 pm »
Hi Roderick

For the moment I can not find FWATCH.SYS. I will keep looking.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4714
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Experiment: aWarp - Atrocious Warp - Moving Paths
« Reply #7 on: August 25, 2015, 08:12:04 pm »
Hi

I will try FWATCH.SYS on the next days, thanks for the pointer.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.