Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Dave Yeo

Pages: 1 2 3 [4] 5 6 ... 356
46
Programming / Re: [Classic REXX] Network Map
« on: March 26, 2025, 04:39:10 pm »
Hi!

What is the name returned from a nslookup 192.168.0.106 ?
Is it the one under nostname from config.sys ?

Today, my machines address is 192.168.0.104,
Code: [Select]
H:\tmp>nslookup 192.168.0.104
*** Can't find server name for address 192.168.0.1: Non-existent host/domain
*** Default servers are not available

config.sys has,
Code: [Select]
SET HOSTNAME=ARCAOS-44454C4

47
Programming / Re: Brainstorm: OS/2 on a Different Kernel
« on: March 26, 2025, 04:30:14 pm »
The Presentation Manager would mean mapping PM windows to whatever Linux is using, X11 or Wayland. WPS might be the hardest to support.

How does PM connects to the OS/2 kernel currently? Because I would think that PM only goes through CPI to the kernel, and maybe some other DRIVER$, but the idea will be to make PM run through a different kernel and not necessary linking it to other GUI like X11 or Wayland yet. 

Regards

I don't really know but it has to connect to the video drivers to get access to the frame buffer to create the PM desktop and write/read the framebuffer. Doing things like seamless DOS/WinOS2 support must be tricky too and maybe kernel level.

48
Programming / Re: Brainstorm: OS/2 on a Different Kernel
« on: March 26, 2025, 04:42:32 am »
Windows NT, up to W2K or even XP, could run 16 bit OS/2 binaries, text mode out of the box, I ran some. Also they had a Presentation Manager kit to run 16 bit PM applications.
It was interesting how they did it and perhaps some lessons.
Textmode OS/2 1.x ran in a Windows terminal. Other then not respecting the full screen bit, so always in a terminal window, they thought they were running on OS/2. You could do things like use tedit to open C:\config.sys (which only existed virtually) and do things like change the LIBPATH etc and other stuff I assume. Save the file and Windows would update the registry instead of actually writing config.sys.
Never used the PM kit but understand it worked fairly well too, use e.exe to edit the config.sys.
Saw a small article in Byte years ago that MS succeeded in doing the same thing with 32 bit OS/2, including the Presentation Manager. No WPS. As they had the source code and NT did start out as a version of OS/2, they had an advantage compared to us and it still sounded like it was a big job. Guess they were prepared if OS/2 won the OS war.
In a way ReactOS would be a better fit for a kernel then Linux. Otherwise extending WINE, which is not an emulator, might help a lot. The running OS/2 on NT does show it is possible to run our binaries on a different OS and WINE shows running Windows apps on Linux is doable. The WPS is perhaps too hard to run on Linux and maybe even NT.

49
Programming / Re: Brainstorm: OS/2 on a Different Kernel
« on: March 26, 2025, 04:26:35 am »
Hi Martin, no expert but my take,
#1, a DosCall1.dll is a big part of the communicating with the kernel, which presents as DosCalls.dll or such. DosCall1.dll would have to communicate with whatever part of Linux manages memory amongst other things.
Also the kernel takes care of loading exe's and dll's, need something to do the same, including doing the fixups. Likely there is WINE code that could be repurposed as Win32 and OS/2 exe's and dll's aren't that different.
#2, guess need to hook into the Linux drivers and present the same stuff in the DLL's as is usual.
#3, I think should be able to load LX binaries, also LE and NE. Once again WINE does similar already, even supports NE binaries I believe.
As for 16 bit, there's still 16bit code in OS/2, especially the low level stuff including DosCall1.dll. WINE runs 16 bit Windows code, perhaps once again ideas from that?
While about it, can look at how WINE supports WIN terminal apps and maybe the same can be done for OS/2 VIO apps. We'd lose full screen support, not much uses it anyways. Linux has a VDM, though not as good as ours as well, or at least it did.
The Presentation Manager would mean mapping PM windows to whatever Linux is using, X11 or Wayland. WPS might be the hardest to support.

50
General Discussion / Re: OS2World Site Update
« on: March 25, 2025, 04:18:08 pm »
Hello

Someone at the Joomla forum gave me hint, but still do know if that can be.
With the firefox inspector (on Windows) if I disable "<div class="site-grid">" I get the similar issue on Firefox for Windows. He told me that it is possible that the other browsers does not implement  "<div class="site-grid">"  correctly but I'm still not sure about it.

Regards

Sounds likely.

51
Programming / Re: Boost 1.87 - assembler problems
« on: March 25, 2025, 04:16:29 pm »
Perhaps copy make_i386_sysv_elf_gas.S to make_i386_sysv_aout_gas.S, change the cmake.lists file or whatever file is needed to adjust to assemble make_i386_sysv_aout_gas.S instead of make_i386_sysv_elf_gas.S and hopefully can just remove the unknown pseudo-ops to get it to assemble. Might have to change the .section types too, forget the specifics right now.

52
Programming / Re: Boost 1.87 - assembler problems
« on: March 25, 2025, 04:05:01 pm »
Hello all, I'm trying to port the entire Boost library system.
Working with the CMake version helped me getting rid of the horrible B2 (bootstrap) build chain which I tried to port but with a lot of headaches.

I'm fixing little problems during compilation, but got stuck in some assembler section:

make gives me

make_i386_sysv_elf_gas.S:34: Error: unknown pseudo-op: `.hidden'

Are you trying to assemble an ELF object? Need to assemble an aout object, you might have to port make_i386_sysv_elf_gas.S to make_i386_sysv_aout_gas.S. The thing with aout is it is a very simple object format and doesn't support much besides generic sections and as you found doesn't support the .hidden pseudo-op. Doesn't support align either.

Quote
I'm currently using GCC 14.20, but as.exe is the "original" one on OS/2 since the 9.2.0 release of GCC.
It seems the assembler is the culprit, by searching in some other forums.
Am I correct in assuming that by default the "as" assembler is used? Or is it WASM?

I'll keep trying, but some suggestion would be greatly appreciated.

Mentore

All Paul's ports of as should work. WASM outputs OMF so everything needs -Zomf and you need USE32 and FLAT for 32 bit OMF. NASM is a good choice if you have the option.

53
Programming / Re: [Classic REXX] Network Map
« on: March 25, 2025, 03:55:06 pm »
It is supposed to find all machines on the network, and here it does!

My hosts file on this newlt installed ArcaOS 5.0.7, read
127.0.0.1                localhost
and nothing else.
My router thus provide my machines with the information and ip-number through dhcp as the vacuum cleaner was introduced just days ago... and when the script run again it update the info (and icons, if SET NET=1 is active) and show that 2 devices has gone offline over the night.

So the question remain... why host command behave the way it does.

"DHCP Monitor" of course list the ip-address on LAN0 for you?
( Desktop\Computer\System Setup\Network\TCP/IP\DHCP Monitor )

DHCP Monitor shows my address as 192.168.0.106. My router doesn't show this. Possibly due the weird router/web thingy. I'm on a LTE connection and the router thing has a sim card and mostly uses WiFi for the local connections. MY OS/2 computer is plugged into the one lan port on the router thing.
I see the router doesn't list this computer on the device page. Later I should dig out my T42 and test with it as it does connect through wireless.
I can ping most of the machines on my net, perhaps the broadcast ping that Greg mentioned gets filtered.

54
Programming / Re: [Classic REXX] Network Map
« on: March 25, 2025, 01:27:03 am »
I added, first 127.0.0.1 ARCAOS-44454C4 to my hosts file, which was 4MB, then things went further but the script failed as it was pinging 27.0.0.x. Then I changed to a minimal hosts file with the same, it checked the 127.0.0.x range. Then I changed it to 192.168.0.100 ARCAOS-44454C4
Code: [Select]
H:\tmp>macaddr.cmd
ARCAOS-44454C4: 192.168.0.100: 70:20:84:0e:35:53
I guess I misunderstood what the script was supposed to do as I thought it would find all the machines on the local network, not just the ones in the hosts file.
Still a problem parsing the big hosts file, whether size or confusion from the ipv6 addresses I don't know.
You can get the hosts file,
Code: [Select]
wget https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
Arca Noae says not to use such a large hosts file, though it seems to work fine here. Its purpose is to block ads, Facebook etc.

55
Programming / Re: [Classic REXX] Network Map
« on: March 24, 2025, 09:00:12 pm »
The script determine the IP-number from the machine that run the script.
Dave: Can it be something like 192.168.0.101 for your machine?

Either 192.168.0.101 or 192.168.0.100, yesterday it was 192.168.0.100

Quote
The script PARSE away the last part and then PING 192.168.0.1 to 192.168.0.255 and follow that by listing each with ARP
Could you please add
Code: [Select]
call trace '?i'before the first line that begin with '@HOST and step through the code and tell us?

Some of the PARSE lines may very well need tweaking depending on wrong assumptions made

Sure hard to redirect so copying and not including when I enter enter.
Code: [Select]
H:\tmp>macaddr.cmd
       >>>             "N"
   104 *-*           '@HOST' VALUE('HOSTNAME',, 'ENVIRONMENT') '2>&1|RXQUEUE';
       >L>             "@HOST"
       >L>             "HOSTNAME"
       >L>             "ENVIRONMENT"
       >F>             "ARCAOS-44454C4"
       >O>             "@HOST ARCAOS-44454C4"
       >L>             "2>&1|RXQUEUE"
       >O>             "@HOST ARCAOS-44454C4 2>&1|RXQUEUE"
       >>>             "@HOST ARCAOS-44454C4 2>&1|RXQUEUE"
       +++   Interactive trace. "Trace Off" to end debug, ENTER to Continue.

   105 *-*           Parse Value LINEIN('QUEUE:') With hostname.i ' = ' ipnumber.i;
       >L>             "QUEUE:"
       >F>             "HOST: unknown host ARCAOS-44454C4"
       >>>             "HOST: unknown host ARCAOS-44454C4"
       >C>             "HOSTNAME.1"
       >>>             "HOST: unknown host ARCAOS-44454C4"
       >C>             "IPNUMBER.1"
       >>>             ""

   106 *-*           last = STRIP(ipnumber.i);
       >C>             "IPNUMBER.1"
       >V>             ""
       >F>             ""
       >>>             ""

   107 *-*           j = 1;
       >L>             "1"
       >>>             "1"

   108 *-*           If VALUE('ACTIVE',, 'OS2ENVIRONMENT') = 1;
       >L>             "ACTIVE"
       >L>             "OS2ENVIRONMENT"
       >F>             ""
       >L>             "1"
       >O>             "0"
       >>>             "0"

   115 *-*           Else;
   116 *-*             Do;

   117 *-*               Parse Value last With major '.' minor '.' subnet '.' this;
       >V>                 ""
       >>>                 ""
       >>>                 ""
       >>>                 ""
       >>>                 ""
       >>>                 ""

   118 *-*               If DATATYPE(this, 'W');
       >V>                 ""
       >L>                 "W"
       >F>                 "0"
       >>>                 "0"

   126 *-*               End;
   127 *-*           hostname.0 = j - 1;
       >V>             "1"
       >L>             "1"
       >O>             "0"
       >>>             "0"

   128 *-*           End;
   134 *-*       j = 0;
       >L>         "0"
       >>>         "0"

   135 *-*       Do While QUEUED() > 0;
       >F>           "0"
       >L>           "0"
       >O>           "0"
       >>>           "0"
   136 *-*       Do i = 1 To hostname.0;
       >L>           "1"
       >>>           "1"
       >V>           "0"
       >>>           "0"
   172 *-*       Return retval;
       >V>         "0"
       >>>         "0"

H:\tmp>

56
For build machine, blank or perhaps something like generic? Don't know what asd is either. I abuse the fixpak to add a version number, eg v2.5.
You can use touch to change the date and time of a binary or any file. The -r parameter is interesting. touch --help.

57
I apologize, seems you can add the bldlevel info to a binary. Looks like the script would need to be extended to add a different date then current.

58
Not every user has to download Addtofile.cmd, just any developer wanting to build the package. Should be able to design the makefile to not error out if Addtofile.cmd isn't available too. Not sure how.

59
You understand that you have to rebuild the binaries after patching the makefiles to use Addtofile? Also I just noticed the license doesn't allow hosting the script on any servers so it would have to be downloaded by anyone rebuilding the binary.
Other then that, adding bldlevel info seems a good idea.

60
General Discussion / Re: OS2World Site Update
« on: March 23, 2025, 07:15:33 pm »
If you look at the user agent, you see the version of Chromium that each browser is using, the good Dooble is using Chromium 122, our Qt6 build is using 94. Likely all the Qt5 based browsers are using older Chromium too. I think that the older Chromium's just don't support the right elements.

Pages: 1 2 3 [4] 5 6 ... 356