SpeakUp Open Watcom Session 2 - May 28, 2005
<MichalN> = Michal Necasek
<eCSNL> = Roderick Klein
SpeakUp started at 19:02:40 EDT
<MichalN> Hello... time to start yet?
<StevenL> It is now.
<MichalN> Aren't these the same people who were present two weeks ago?
<MichalN> Well, that should make it pretty short.
<eCSNL> Well the time and date is correct....
<StevenL> Not if they have already forget everything you told them last time.
<MichalN> True. I might have forgotten what I said last time, too!
<StevenL> I could always cheat and look at the logs.
<MichalN> Nonono, no cheating!
<StevenL> We could just call it research.
<eCSNL> Yep time is correct.
<Talon2> Michal, do you have a favorite OS/2 programming book? and why?
<MichalN> Hmm... I think it might be Design of OS/2.
* eCSNL turns on the microphone.
<eCSNL> And moves it to Michal.
<eCSNL> I must add that my batterties are rather run dry.
<MichalN> Design of OS/2 explains a lot of things that aren't explained anywhere else. It's not a reference but very worth reading.
<eCSNL> StevenL is so nice to be the moderator of this session (thank Steve).
<MichalN> What does a moderator do? Kick people out?
<eCSNL> I already put my alarm on so I could welcome everybody.
<eCSNL> Well he guides the discussion incase it realy goes bad :-)
<StevenL> Not this moderater. :-)
<StevenL> I'm supposed to keep things on topic, what ever that means.
<Sector> Chanenls can be set to be Moderated, this enables only Channel Operators and those they specifically give voice to to speak.
<MichalN> So let's welcome everybody... and start with the question. Or continue, as the case may be.
<MichalN> I mean, questions. 19:09:27
<eCSNL> Who will keep a log file ?
* The topic for #voice is: Voice Speakup with Michal Necaesek.
<MichalN> Back to the OS/2 programming books...
<MichalN> I also liked the predecessor of Design of OS/2, which is a book called Inside OS/2 by Gordon Letwin.
<JWE> Logging has started
<StevenL> I have a couple of recommendations too.
<MichalN> It was written way back when for OS/2 1.0 but is still relevant.
<StevenL> For GUI Panov's Art of OS/2 Programming is very good.
<MichalN> That was my first OS/2 programming book.
<StevenL> For internals Iocobucci's OS/2 Programmer's Guide is very valuable too.
<StevenL> It covers things that the current INFs omit.
<MichalN> A good book is also Designing Real-World Applications (?) by... I forget who. It's got lots of goodies about PM programming.
<StevenL> It also includes the Assembler language bindings which are useful when debugging.
<eCSNL> Ok I will goto to bed now, thanks Michal for dropping by and thanks Steve for dropping in. I'm going to bed, I'm almost falling a sleep behind the computer.
<MichalN> Good night Roderick!
<MichalN> Designing Real-World Applications for OS/2 2.1 by Blain, Delimon & English.
<MichalN> Client/Server Programming by Orfali and Harkey has a very good chapter on multithreading, although most of the book is database oriented and not of general interest.
<MichalN> Ray Duncan's old Advanced OS/2 Programming also contains some information not found in later references.
<MichalN> I unfortunately never managed to get my hands on the full set of OS/2 1.x technical references. One of the volumes should have a good deal of information on device drivers.
<MichalN> The biggest problems with those books and reference manuals is that each one contains something the others don't ;)
<MichalN> Can't think of any more programming books. These days I much more often need reference material, and some things aren't easy to find.
<Talon2> I managed to get a copy of The Art of OS/2 Warp Programming (1995) via amazon.com this week. It is in great condition. Unfortunately it is missing the source code diskette. Sorry to ask but if you have the disk I'd like a copy.
<MichalN> I have the book at work, and I'm not sure it has the disk! I'll have to look.
<MichalN> Please e-mail me privately so I don't forget.
<Talon2> Will do.
<MikeG> Is there an alt to ipfc from the 4.5 toolkit? The problem I am having with wpperrs.ipf makes no sense what so ever.
<MichalN> Well, besides older versions of IPFC, I don't think so.
<StevenL> If Michal does not have it, I have the diskette here.
<MichalN> I never heard of any replacement IPFC, and I wish there was one.
<MichalN> It's one of those tools that works just well enough to remove most of the incentive to write a replacement. Kinda like the IBM Dialog Editor.
<MikeG> I guess... the wpperrs only compiles when I remove lines starting with error 768 to right before the beginning of the 900s... and there does not seem to be anything wrong with the lines (in the index)
<MichalN> I'm pretty sure there really isn't anything wrong with the source .ipf. Like I said, the old version of IPFC builds it just fine. It's much more likely that IPFC is broken.
<StevenL> This would not be the first tool that IBM broke with an update.
<MikeG> Ok... another question
<StevenL> I suspect most of use keep multiple versions of rc around just for this reason.
<MikeG> I am just learning the GML stuff, but I also so see (I believe) wgml outputs some lines offset to the right and cuts off the last part of the text.
<StevenL> Go ahead.
<MichalN> In what output format?
<MikeG> I have an example
<MikeG> 246 left expression is not a pointer to a constant object
<MikeG> 247 cannot redefine default argument for '%S'
<MikeG> 248 using default arguments would be overload ambiguous with '%S'
<MikeG> 249 using default arguments would be overload ambiguous w
<MikeG> 250 missing default argument for '%S'
<MikeG> 251 enum references must have an identifier
<MikeG> 252 class declaration has not been seen for '~%s'
<MikeG> I looked at the files in \bld but it looks fine...
<MichalN> What file is this?
<MikeG> I believe wgml here is the start of the output:
<MikeG> os2 : wpperrs/wpperrs : Open Watcom C++ Diagnostic Messages
<MikeG> e:\ow14\docs\gml\os2\wgml wpperrs ( file wgmlopts.tmp
<MikeG> WATCOM Script/GML V4.0 Copyright by WATCOM International Corp. 1985,1993.
<MikeG> Processing device information
<MikeG> pass #1
<MikeG> Processing layout
<MikeG> Formatting document
<MikeG> ***WARNING*** SN--049: Heading level(s) omitted:
<MikeG> Encountered :H1, expecting :H0
<MikeG> Line 7 of macro 'zh1'
<MikeG> macro 'zh1' defined at line 329 of file '..\doc\whelp\whelp.gml'
<MikeG> Open Watcom C++ Diagnostic Messages
<MikeG> 000 internal compiler error
<MikeG> 001 assignment of constant found in boolean expressi
<MikeG> I check a book with the same layout (wfcerrs) and see the same thing
<MichalN> Are you talking about console output from WGML?
<MichalN> Since we unfortunately don't have source code to WGML, there's nothing anyone can do about it.
<MichalN> The source code seems to be lost - it's not that Sybase doesn't want to open it up, they don't have it.
<MikeG> That's what I was going to ask about....
<MichalN> I have tried several times to track it down but no one knows where it is. It's very possible that it simply doesn't exist anymore.
<MichalN> That unfortunately sometimes happens with software.
<MikeG> That's too bad....
<MichalN> It is. And I'm not sure what the best solution is.
<MikeG> It would take something totally new to replace it
<MichalN> There is significant amount of documentation and WGML works well for what it does.
<MichalN> The thing is that replacing WGML is probably just as hard as rewriting WGML from scratch.
<MichalN> I'm not even aware of any documentation system WGML could be replaced with - something that can generate PostScript, HTML, Windows, OS/2 and DOS help files from single source.
<MikeG> I wonder if it would be better to switch to a platform neutral system
<MichalN> For what? For online help?
<MichalN> I'm not sure what you mean by "platform neutral".
<abwillis> I am curious how the Linux port is going... I don't have any linux boxes but most of my work is in porting which puts me to using gcc
<abwillis> as most of the open source is using it
<MichalN> The Linux port is essentially not going anywhere. Nobody is actively working on it.
<MichalN> The compiler can build itself, and the debugger can be used for debugging GCC built programs.
<MichalN> I don't know if anyone is actually *happy* with GCC, but if not, they're not unhappy enough to do anything about it.
<StevenL> This is the classic issue that it is always hard to changes compilers for an app of any size.
<StevenL> I'm considering porting fm/2 to Watcom, but I need a chunk of available time before this can happen.
<MichalN> Certain apps are written well enough to be buildable with multiple compilers :) But if they aren't then yes, it always takes some effort.
<MichalN> Which compiler was FM/2 developed with?
<StevenL> Obviously it was originally 16-bit with all the expected tuning #pragmas.
<MichalN> I think porting from CSet/2 to Watcom ought to be a lot easier than the opposite direction.
<MichalN> What pragmas? Like putting code/data into specific segments?
<StevenL> When I took it on, I moved it to VAC3.08.
<MichalN> Well, #pragmas aren't supposed to be portable ;)
<StevenL> Agreed and they will disappear eventally.
<MichalN> I think for many projects, porting the build system is more work than massaging the actual source code.
<StevenL> I sure don't need them now.
<MichalN> Especially for people who aren't very good at makefiles.
<MichalN> I didn't use to be, but necessity forced me to learn how to write makefiles.
<StevenL> I've been thinks of build some sort of tool to convert VAC make files to wmake format.
<MichalN> How well does wmake work with IBM style makefiles in its -ms mode?
<StevenL> I'll know when I try.
<StevenL> For simple apps, I don't even need it.
<abwillis> I think at this point Watcom would probably buildMozilla but the conversion process would be the difficutly
<MichalN> It works pretty well with MS NMAKE makefiles, but I don't know far IBM and MS diverged.
<StevenL> I have not tried to port anything big yet.
<StevenL> I'm trying to remember the MS specifics...
<MichalN> I wish I had more spare time, I'd be interested in Moz even if just for curiosity's sake.
<StevenL> IIRC, the big differences are how the shell is invoked in the conditional stuff.
<StevenL> Same here.
<MichalN> Differences between wmake and NMAKE, or IBM's vs. MS's NMAKE?
<StevenL> I think I need to find time to build Moz because I can probably help one some of the tuning issues.
<StevenL> It's not quite enough for me to explain how it needs to be done.
<StevenL> IBM and MS.
<MichalN> OK. I never really used MS's NMAKE much.
<MichalN> The last thing I've been looking at is finishing the OS/2 support in wrc. IBM's RC has been sucking my blood for too long.
<MichalN> I think I have the resource script compilation under control, and can generate .res files identical to IBM's (I think!).
<StevenL> If I every start doing something useful for Watcom, that will be the first thing I work on.
<MichalN> I figured that spitting out identical .res files is a great way to test - I know that if mine is the same as IBM's, I must have done it right.
<MichalN> Now I'm figuring out how to put the resources into LX modules and of course running into the old problem with no documentation.
<abwillis> or broke it in the same way at least :)
<StevenL> At last the regression testing is easy.
<MichalN> So I end up writing lots of testcases and observing what IBM does.
<StevenL> Take a look at Paul Ratcliffe's resmgr stuff.
<StevenL> I think it contains the code you are looking for.
<MichalN> Wasn't it Martin Lafaix's? Or is this a different resmgr?
<StevenL> It may be Martin's updated.
<StevenL> I know it's much newer and it's what the eCS folks are using.
<MichalN> I have Martin's, but the guts are in an executable that I don't have source for.
<abwillis> I believe I have read that Paul updated Martin's resmgr
<StevenL> I guess you need to ask Paul if he has the source.
<StevenL> Hold on. I see a source.zip in the zip.
<MichalN> I'll have to look at that. Martin's tools do not add resources to an executable, just extract them.
<MichalN> The executable format is actually well documented, but what is not is how exactly the resources are supposed to end up in objects/pages.
<StevenL> I see a rdcpp.pas so there is some source.
<abwillis> to build OW from source, do I need any special setup?
<MichalN> No. You need OW 1.3 and edit the startup.cmd file.
<MichalN> Our policy is not to require any third party tools or anything that isn't likely to be already installed on a user's machine.
<MichalN> The only exception is IBM's RC and IPFC. I hope to get rid of the former dependency soon.
<abwillis> the daily tar the way to go or cvs?
<MichalN> There is no CVS anymore, so the daily tarball :)
<MichalN> CVS doesn't seem to be very good at handling a source repository the size of OW, and we had some issues getting the changes from Perforce into CVS in a sensible way.
<MichalN> The problem with Perforce is that currently it doesn't handle anonymous clients so well, although Perforce is supposedly working on that.
<StevenL> How big was the CVS repository?
<MichalN> I don't know exactly... probably in the region of 100MB and tens of thousands of files.
<StevenL> That's tiny.
<StevenL> There was something else wrong.
<MichalN> Doing a CVS update on such repository takes forever and creates tons of network traffic.
<StevenL> The eCS repository is medium sized (around 3-5GB)
<MichalN> But how many files?
<MichalN> I think the number of files/directories is much more important than the total size.
<StevenL> 13,489 in my current sandbox. :-)
<StevenL> More in the repository.
<MichalN> How long does it take to do an update?
<StevenL> 3-5 minutes.
<MichalN> That's the problem. With Perforce, it's more like 3-5 seconds.
<MichalN> The thing is that those 3-5 minutes keep the server pretty busy. We'd need a dedicated server, which we don't have.
<StevenL> It really shouldn't be that bad for a reasonably capable server.
<StevenL> A lot depends on which cvs.exe you are using.
<MichalN> This server had other more important things to do ;) And it was running Linux.
<StevenL> I did a bit of work with Andrew Belov to clean up issues in the 1.11p1 port.
<MichalN> Whatever the latest CVS version was.
<StevenL> Humm. I would expect the Linux version to be better.
<StevenL> These day, you could also run subversion on Linux.
<MichalN> Maybe the Linux multitasking isn't!
<StevenL> There is that.
<StevenL> Linux has a few years to go before it can match the Solaris internals.
<MichalN> For a desktop machine, Linux multitasking and memory management is pretty amazingly bad.
<StevenL> I tend to agree.
<StevenL> The GUI stuff needs a lot of tuning.
<StevenL> KDE seems to take forever to start apps like Firefox.
<StevenL> Anyway, back to Watcom?
<MichalN> It also needs someone to tell the pixel pushers to get a 500MHz box and *then* start adding eye candy ;)
<MichalN> So does Paul's stuff have the ability to add resources to a LX module?
<StevenL> I think so.
<MichalN> OK, where do I get the source?
<StevenL> I knew you were going to ask.
<MichalN> It's not that I don't know how to write the code, but I know I'll run into lots of gray areas.
<MichalN> And looking at someone else's code is easier than reverse engineering RC.EXE.
<abwillis> I don't suppose there is a zip or rar instead of the bz2 file?
<StevenL> What wrong with a bz2?
<MichalN> No. RAR isn't exactly free and bz2 gives significantly better compression than ZIP.
<abwillis> got to download somethig to get it
<StevenL> Hobbes. :-)
<abwillis> get at it
<abwillis> yeah, bust out the dvd from mensys :)
<MichalN> I normally prefer plain old ZIP, but in this case bz2 really makes a difference.
<MichalN> You can see that if you look at http://www.openwatcom.org/ftp/source/
<MichalN> bz2, 22MB, ZIP of the same thing, 47MB!
<StevenL> That is a lot. 20:15:42
<abwillis> ah, decided to try winrar under Odin and it seems to handle it, good to go
<MichalN> I actually think it's more the tarring before zipping what makes the difference rather than the actual compression algo.
<StevenL> Must be the spaces. :-)
<MichalN> Hmm, resmgr doesn't seem to add resources to executables. Just extract them. Doc says you need RC.EXE for adding.
<StevenL> Maybe bzip supports a longer lookup strings.
<StevenL> Actually I should say larger token tables.
<StevenL> IIRC think zip is limited to 4096 tokens.
<MichalN> I think it uses a totally different compression algorithm. I don't think it's LZSS based at all.
<MichalN> But I could be wrong about that.
<StevenL> I'll have to do a memory refresh.
<abwillis> where do I find the startup.cmd that needs modified?
<MichalN> Did I say startup.cmd? It's setvars.cmd.
<StevenL> Burrows-Wheeler-Fenwick block-sorting text
<abwillis> ok, that I have ;)
<MichalN> Gawd, I really did say startup.cmd. And I only edited that file about a million times...
<MichalN> That's what I thought, block-sorting Burrows-Wheeler transform or something.
<MichalN> In my experience bz2 is actually only marginally better than ZIP, but tarring the source first and then compressing that big fat tar is what makes the difference.
<StevenL> I'm still trying to find some theory pages. Maybe later.
<StevenL> That's was my thought. Bzip does better on larger files.
<MichalN> So does ZIP :) But ZIP was designed to make it easy to extract/update individual files within the archive, which is sometimes hurting the compression rate a lot.
<StevenL> I'm not sure.
<StevenL> If you mean that each file is compressed separately with a separate lookup table, that is true.
<MichalN> Yes, that's what I meant.
<StevenL> This definitely hurts compression speed.
<MichalN> Archivers like ACE and RAR gain a lot by sorting source files by type and compressing them all together.
<StevenL> However, the algorithm is probably what's affecting the ratio mostly.
<StevenL> Interesting. 2
<MichalN> RAR is probably the best overall archiver out there, but it ises tons of tricks like using completely different algorighms for certain file types.
<StevenL> Do they store one lookup table for use by multiple files?
<StevenL> That can definitely help.
<MikeG> Night and thanks for showing Michal
<StevenL> See ya.
<MichalN> Good night!
<StevenL> Thanks for coming.
<MichalN> They call it "solid archives" and it means that to extract a file from the middle of an archive you have to uncompress all the files before it.
<StevenL> I see.
<MichalN> Solid archives are very good for distribution, when you have to uncompress everything anyway. But if you need to extract/update individual files within archive, ZIP rules.
<abwillis> I am not finding a make file to run
<MichalN> Did you read the readme file?
<StevenL> I knew you were going to say that.
<abwillis> not the right one apparently
<MichalN> The one in the root directory describes the steps required to build.
<MichalN> Steven, I just tried unzipping the OW tarball bz2 and compressing the tar with ZIP.
<MichalN> The zipped tar is 29MB, compared to over 40MB for files zipped up individually.
<StevenL> That's more like what I would expect.
<MichalN> Yes. It's worse than ~23MB bz2, but a lot better than regular ZIP
<StevenL> I was surprised by the difference, but did not want to say anything until I took a closer look.
<MichalN> It does make a huge difference when you're compressing lots of small files that are similar.
<StevenL> My rule of thumb for bzip is that it is usually 5-10% better for large numbers of files.
<MichalN> Yes, I think that sounds about right. 2
<MichalN> For binary files, the difference is usually pretty small.
<IRCcssdir> i came on line late here; michal when will 1.4 version be ready?
<MichalN> BTW the source tar is now 200MB, so the CVS repository was a little bigger than that.
<MichalN> I have honestly no idea.
<StevenL> What you say about cvs being non-optimal on the server is true.
<StevenL> I did not realize perforce was so good.
<StevenL> It must keep a lot of meta data around.
<MichalN> Perforce has a totally different approach - I'll explain.
<MichalN> Yes, it keeps lots of metadata around. In Perforce, the server keeps track of what each client has.
<MichalN> This means there is no need to examine the state of the client and compare it with the server.
<MichalN> If there are no updates to send, the server can figure it out pretty much instantly.
<abwillis> which is why it has problems with anonymous?
<MichalN> Yes. Because keeping track of the metadata for hundreds of times takes up space.
<MichalN> hundreds of clients I mean
<IRCcssdir> debugger question, will the debugger ever allow one to break into a running program (without breakpoints)?
<MichalN> That depends entirely on the program and operating system in question.
<IRCcssdir> ecs 1.2 and c program?
<MichalN> If it's a console program, you can break in by hitting Ctrl-Break in the debuggee.
<MichalN> As long as the debuggee handles signals, because otherwise the OS will kill it without asking.
<IRCcssdir> yes its a console program but I don't want to kill the process, I want to find out where its current at.
<MichalN> I didn't say Ctrl-Break will kill it ;)
<MichalN> If the process handles Ctrl-C, the debugger will stop with an exception.
<StevenL> I can't think of a debugger that will not do this for you.
<StevenL> This does assume you are starting the app under the debugger.
<IRCcssdir> yes I start it under debugger but I don't install an exception handler for ctrl c
<StevenL> You don't need one.
<StevenL> What debugger are you using?
<MichalN> Someone has to call SetSignalExceptionFocus (IIRC), otherwise it won't be caught.
<MichalN> The runtime lib does that if signals are used.
<IRCcssdir> the one with the ow 1.3
<StevenL> I don't need to do this with icsdebug or idebug.
<StevenL> Both are capable a capturing Ctrl-C with no action on the part of my code.
<MichalN> Their runtime probably calls DosSetSignalExceptionFocus whether you want it or not.
<StevenL> That is likely. It is probably configurable too.
<IRCcssdir> is setsignalexceptionfocus fat ... c++ stuff??
<StevenL> I can tell the VAC debuggers which signal to trap and which to just pass through.
<MichalN> No. It's the OS/2 API.
<MichalN> Unfortunately the signal/exception handling in WD is not nearly as good as it could be. One day it's going to get rewritten.
<MichalN> But that day isn't today.
<IRCcssdir> so if I setsignal I could put breakpoint in it and when it takes the breakpoint I could check call stack?
<StevenL> Unless someone volunteers. :-)
<MichalN> Yes, unless someone volunteers :)
<MichalN> No, if you install a SIGINT handler then the process will get an exception when Ctrl-C is pressed. The debugger will stop on that exception.
<IRCcssdir> oh so sigint calls dossetsignalexceptionfocus for me
<StevenL> I recommend you look at the sample code in the CP ref.
<MichalN> The signal() function does that, yes.
<MichalN> The signlo32.c module in bld\clib\process\c may also aid in understanding what's going on.
<IRCcssdir> michal .... would you present at warpstock in Hershey on ow
<IRCcssdir> it would likely spur more users ... and perhaps a few donations for the cause
<MichalN> I'm not really interested in donations, and more users don't help if they don't contribute anything.
<IRCcssdir> what sort of help do you need
<MichalN> Over the years, I got about zero help from OS/2 users. I think that's pretty sad.
<IRCcssdir> list your top 3
<MichalN> Top item is the installer. Without it there won't be any release. 2
<MichalN> The rest really depends on what people want. Better C++ compiler, better GUI tools, better C99 support, better library...
<IRCcssdir> what sort of issues are needed to go from current 1.3 to 1.4 for the installer for ecomstation?
<IRCcssdir> back to warpstock ... how can it change from a maybe to yes?
<MichalN> The plan is to go back to the old Watcom installer that was used for versions 10 and 11. That way there's just one installer for all platforms.
<MichalN> But that installer needs updates, install scripts need writing/testing etc.
<MichalN> You can't change it at this point :) All I can say right now is "probably yes".
<StevenL> How many hours of labor do you think it will take to get the OS/2 version up and running?
<MichalN> The OS/2 installer can be built and run right now. The install script is mostly done but needs thorough testing.
<abwillis> The installer is in the source?
<MichalN> The big missing piece is some sort of support for self-extracting executables.
<MichalN> Yes, the installer is in the source (bld\setupgui, install scripts in distrib\ow).
<StevenL> What do you mean? Is there not compression library for OS/2 implemented?
<MichalN> The Watcom installer supported installation from floppies and from CD. Floppies are obsolete, and CD installs are what we want but we also need downloadable installer.
<MichalN> What compression library?
<StevenL> I'm asking you.
<StevenL> I'm didn't really understand what meant.
<MichalN> Oh. Yeah, sure, there are compression libraries.
<IRCcssdir> i got to run; michal thanks for the work on ow
<StevenL> Are you saying there is not OS/2 stub to run the installer?
<MichalN> No, I'm not saying that.
<MichalN> The OS/2 stub is there, but the compressed archive support isn't there.
<StevenL> OK. Try again. I'm dense at the moment.
<MichalN> I might not be good at explaining this :)
<MichalN> I'll try again.
<MichalN> The installer currently can install from:
<MichalN> a) floppies, which is useless
<abwillis> the last speackup mentioned zlib... this is what you wanted it for?
<MichalN> b) CD, whcih is unsuitable for downloads.
<MichalN> Yes, that's what I wanted zlib for, although it doesn't *have* to be zlib.
<MichalN> The CD install just copies files from CD to target media.
<MichalN> I need some way to read the files from a compressed archive instead.
<StevenL> For all platforms or just OS/2?
<MichalN> For all platforms.
<StevenL> Ah that's what I missed.
<abwillis> are the others using zlib?
<StevenL> So you need something like what WarpIN does already, but cross platform and Watcom-ized.
<MichalN> No, the Watcom installer doesn't use any compression library period. The OS/2 version is no different from the other platforms.
<MichalN> Yes, something like that.
<MichalN> It shouldn't be terribly complicated but I just haven't found the motivation to do it.
<StevenL> It's the usually time consuming stuff.
<MichalN> The compression part isn't hard, it's the file archive part that's complicated.
<MichalN> Yeah, that's it :)
<StevenL> Is the WarpIN source license compatible with OpenWatcom?
<MichalN> I have no idea.
<abwillis> gpl isn't it?
<StevenL> But let me go check.
<MichalN> GPL is definitely not compatible with the OW license.
<StevenL> Then we can't use WarpIn code.
<MichalN> It looks like WarpIn is GPL, looking at http://www.xworkplace.org/proj_warpin_download.html
<StevenL> Which of the OpenSource license are compatible with OW?
<MichalN> I'd like to basically implement a simple POSIX style I/O layer (open/lseek/read) on top a read-only compressed filesystem.
<StevenL> Mozilla? BSD?
<MichalN> BSD definitely.
<MichalN> Apache almost certainly. Dunno about Moz, it might be.
<MichalN> The idea is that it should then be fairly simple to get the files eg. over HTTP instead of a local archive. That would make sense if lots of people are only installing a subset of OW.
<MichalN> I think the BSD license is compatible with just about anything ;)
<StevenL> I guess one place to look is
<StevenL> True, I have a hard time beliving the BSD license says what it does.
<StevenL> The v2 BSD basically says here it is. Use it any way you want and say anything you want as long as it does not make the Regents liable.
<MichalN> Yeah. It's the simplest license ever :)
<StevenL> I basically see it as the GPL on the honor system.
<StevenL> If you take too much BSD code and make it your own, people will shun you.
<MichalN> Yes, BSD is a true "no strings attached" license.
<MADodel> Didn't IBM take the BSD TCP/IP stack for OS/2?
<MichalN> Yes. Just look at the TCP/IP headers.
<MichalN> It's all BSD stuff.
<StevenL> And the source code is all invisible to the outside world.
<MichalN> Which was good for me, because I could copy the headers verbatim, throw out useless stuff and use them for OW :)
<StevenL> Of course modifying the IBM source for IP6 is a lot harder.
<StevenL> Oh well, such is life.
<MichalN> That's what GPL is trying to avoid, people "hiding" the source code.
<StevenL> There's something to be said for that.
<MADodel> But if the source is hidden, how can they prove it was open source based?
<MichalN> Yes, there is. The trouble with GPL is that it's really hard to build a business on it.
<StevenL> Of course the WarpIN GPL license may not be a real problem.
<StevenL> Ulrich can relase the same code under another license if he wishes.
<MichalN> IPv6 is such a joke, I remember how it was "just around the corner" 10 years ago :-P
<StevenL> That's marketing.
<StevenL> I've learned to ignore most of what marketing when they talk about time frames.
<MichalN> I'd have to look at his code. Unless what I need is already isolated in a separate library, it might still be easier writing code from scratch.
<StevenL> TTBOMK, there's actually quite a bit of IP6 in the core, but that's about it.
<MichalN> I don't think it's just marketing. I think people seriously overestimated the need for IPv6.
<MichalN> NATs and DHCP solved the #1 problem of IPv4, which is limited address space.
<StevenL> Ulrich's code is pretty well organized and heavily commented.
<StevenL> NAT is definitey a simpler solution.
<MichalN> Yes, and most importantly, compatible with existing software and hardware.
<StevenL> NAT is a bit nasty in some VPN environments.
<MichalN> I think most folks just aren't very happy with the thought of replacing existing HW/SW if they don't perceive it as broken.
<StevenL> I'm definitely in that group.
<MichalN> Could be just that I haven't done much with VPN.
<MichalN> I'm in that group too.
<StevenL> Now, I'm just waiting to see what comes of the Apple/Intel rumours.
<MichalN> I think Apple would have to be insane to do that.
<StevenL> Use the web luke.
<StevenL> Well there are also rumours surfacing that some of the PC vendors want to do Macs.
<MichalN> Switching from big to little endian would definitely not be easy.
<StevenL> Yes and no.
<MichalN> Who? Companies like HP?
<StevenL> The internals are Linux
<StevenL> I think it's tier 1's.
<MichalN> No, the guts of MacOS X are BSD :)
<StevenL> It's just something I heard on the radio.
<StevenL> I know that. I tend to interchange them when I should not.
<MichalN> Well, I'd think that lots of OEMs would be seriously fed up with Microsoft by now.
<StevenL> They are probably tired of being led.
<MichalN> I know I would be.
<StevenL> But it's like being on drugs.
<StevenL> Once you have the habit it's hard to stop.
<MichalN> MS has pretty incredible level of control in the PC marketplace. It's amazing what they can get away with.
<MichalN> Heh, that's true! (not that I have any personal experience)
<StevenL> All because of on little agreement with IBM.
<MichalN> Just today I was reading some article how IBM is still wanting to get revenge on Microsoft for OS/2.
<StevenL> Can you say Linux?
<MichalN> Yup. And these days, IBM means Linux.
<StevenL> Of course, no one really trusts IBM anymore.
<MichalN> But then again, they probably trust MS even less!
<StevenL> But most folks seem to feel thay have no choice but go the MS way.
<MichalN> The problem with IBM is always that it speaks with too many voices. And seems too willing to tell you what you want to hear.
<StevenL> That comes from the fact that they are a sales company.
<StevenL> I've always viewed MS as a marketing company.
<MichalN> Probably true. But then again more and more people are being increasingly dissatisfied with MS.
<StevenL> There is a difference.
<MichalN> Yes, there definitely is a difference!
<StevenL> At the same time, the other vendors keep finding ways to shoot larger holes in their feet.
<MichalN> So what sort of company is Apple then?
<StevenL> I've got a client that has been running Groupwise for year.
<StevenL> They will probably go to Outlook because Groupwise just can't seem to get it's act together when it comes ot viewing Word documents.
<StevenL> We are not even talking editing here.
<StevenL> This is not a MS-centric shop either.
<StevenL> All the servers are Sun.
<MichalN> Then they shouldn't be using Word at all ;)
<StevenL> The Desktops are Windows.
<StevenL> The used to be a WordPerfect shop.
<StevenL> Need I say more.
<MichalN> I'm in the lucky position that I almost never have to deal with MS Office documents.
<StevenL> I am too.
<StevenL> I can avoid it mostly.
<StevenL> However, it I was a run of the mill application programmer, I don't know that I would be able to avoid doing MS work.
<StevenL> Hi Chrissy.
<MichalN> Probably not much...
<StevenL> Long time.
<MichalN> So you think Apple might really switch to Intel CPUs?
<StevenL> I think it's too early to know.
<MichalN> Intel hasn't really done anything impressive lately. IA-64 was a major flop, they had to play catch-up to AMD64 and their implementation doesn't sound too great.
<StevenL> It may just be a way to leverage better terms from the IBM foundarys.
<MichalN> Could very well be!
<StevenL> Intel is wierd in a lot of ways.
<StevenL> They have the same problem any company with history has.
<StevenL> They have to continue to support existing customers.
<StevenL> The takes away resources that could be better applied elsewhere.
<MichalN> It's not that I exactly hate Intel... my "new" computer has Intel CPU and Intel motherboard, and I'm pretty happy with it.
<StevenL> I understand.
<StevenL> From my POV, Intel seems to be more reliable than AMD.
<MichalN> Yes. I think a lot of that isn't AMD's fault though.
<StevenL> I don't know exacly why. Maybe the folks that buy AMD tend to buy lower quality MBs.
<MichalN> I've had problems with AMD systems, but usually it was the motherboard, not CPU.
<StevenL> It's never any one thing.
<MichalN> I think you're right about that, the AMD systems tend to be "cheap".
<StevenL> All systems are cheap these days. Some are just cheaper than others.
<MichalN> I've seen very good systems using AMD CPUs and nForce motherboards.
<StevenL> From my POV all computers are commodities. The primarly differentating factor is quality.
<MichalN> Let's say "designed with price as the overriding objective".
<StevenL> The reality is this applies to all manufacturing.
<MADodel> Speaking of CPUs, Michal did you ever find a system to run OS/2 PPC?
<MichalN> Yes, I did. How did you think I took the screenshots? :)
<StevenL> The successful companies manage to build cheaply while still keeping the quality at an acceptable level.
<MADodel> any idea where I might find such a system?
<MichalN> Nah, it was actually PowerPC demo version of ImpOS/2.
<MichalN> Other than eBay, no idea, sorry.
<MichalN> I have tried but was never able to find a source of those machines.
<StevenL> What specs should Mark be looking for?
<MichalN> IBM Power Series 830 or 850.
<MichalN> I think those systems can be classified as "very rare".
<StevenL> Build with long discontinued parts I would suspect?
<MADodel> Or a Thinkpad Power Series 820 or 850
<MichalN> The systems were made in 1995, I think discontinued in 96.
<MichalN> I don't know if the ThinkPads work for OS/2. They might, but they might not.
<MADodel> According to the article in VOICE and Oliver Mark those will work if someone could actually find one.
<MADodel> I'm looking for one for Warpstock this year.
<MichalN> OS/2 PPC was intended to run on those ThinkPads, I just don't know for a fact that it does.
<StevenL> I know Sundial has Relish for the PPC. You might ask them if they have any hardware hidden away.
<MADodel> At this point I just want to locate something that runs it.
<abwillis> ow build completed
<StevenL> Did you expect otherwise.
<MADodel> Stardockhad a PPC as well.
<StevenL> There are benefits to a self-contained toolchain. :-)
<abwillis> I thought that was what testing was for
<MichalN> It takes a little over an hour to do a full build on my P4 box.
<MichalN> Yes, and that's exactly why I want to keep it self-contained. Especially when you support several different build platforms, requiring 3rd party tools quickly becomes a nightmare.
<MichalN> The OW build partially supports GCC, so on Linux it has no prerequisites (assuming you have GCC installed).
<abwillis> is this expected due to being built on OS/2? Can not open source directory 'e:\cvs\work\ow_daily\docs/nt/*.hlp': No such file
<MichalN> It is also possible to build a good chunk of the code on PowerPC and MIPS.
<MichalN> No, it's not expected to build unless you have a version of HCRTF that runs on OS/2.
<MichalN> The documentation is the only part that can't be run on a single build system. All the rest can be run on a W2K box.
<MichalN> I should say 'built', not 'run'.
<MichalN> Since we're sorta off topic anyway, does anyone have experience with LaserJet PostScript printers?
<MichalN> Mark, I also remembered that there was a Power Series 440 machine that ran OS/2, but that one I think was for developers only and never really sold.
<MichalN> I know Chris Graham has one.
<StevenL> What about the Laserjet do you need to know?
<MADodel> I may contact Sundial and Stardock and see if they might be willing to part with their PPC if they haven't already junked them.
<MichalN> That could be an option.
<MichalN> I need to know what the best way is to print PostScript files in PS mode. I'll explain.
<MichalN> I got an old HPLJ 4M Plus from the office. It's ancient and huge and heavy but still works great.
<MichalN> I tried printing PS files by simply copying them to PRN:. But they came out as the source text...
<MichalN> I discovered that if I stuff PJL commands inside the PS files, I can get them to print as PostScript, but I'd really like to find some better way.
<StevenL> They need a header command of some sort.
<MichalN> The printer is supposed to automatically detect PS or PCL mode, but that doesn't seem to do anything.
<StevenL> This converts them the eps which, IIRC, prints as you would expect.
<MichalN> And I'm wondering if OS/2 is actually interfering with the process somehow.
<StevenL> It should not be.
<StevenL> Try this.
<StevenL> Select a PS printer object and print to file in printer format.
<StevenL> Then take a look that how the file starts.
<MichalN> Where do I turn on the "printer format"?
<StevenL> It in the queue options.
<StevenL> Let me go check the name.
<MichalN> Hmm... now I'm wondering if it might make a difference whether I have the PCL or PS printer driver installed.
<StevenL> It's the "Printer-specific format" checkbox.
<MichalN> Optput Port/Output to File checkbox?
<StevenL> That too.
<MichalN> Ah, now I see it.
<StevenL> You do need to force the driver to output PS.
<StevenL> Either that or just install a pure PS driver.
<StevenL> You don't need a real printer out there to do any of this testing.
<MichalN> Ah, okay. I guess I should have installed the PS driver in the first place.
<StevenL> I don't think that's really your problem.
<StevenL> When you go to PRN from the command line, you bypass the printer object and anything it might do to the output stream.
<StevenL> You are basically sending raw data to the printer.
<StevenL> That's why it has to be exactly what the printer wants.
<StevenL> Folks using those cheap inkjets find this out quickly.
<StevenL> Printing from the command line usually does not even make the printer ready led blink.
<StevenL> Drop the text file on a printer object and text appears and ink is used.
<MichalN> And the printer object has a nasty tendency to start eating all CPU time... like it did right now.
<MichalN> I might have to reboot.
<StevenL> Bad object. :-)
<MichalN> Hmm... I didn't realize this.
<MichalN> I'll have to try that new-fangled drag'n' drop thingy.
<MichalN> I know copying to PRN works on my machine at the office, but that's a totally different setup.
<MichalN> There's a W2K network print server, which might well be munging the data.
<MichalN> Here I just have the LaserJet hooked up to my router and my computer is talking to it directly over TCP/IP.
<MichalN> This is a 1994 printer, mind you!
<MichalN> (it probably cost a few grand back then)
<StevenL> More than that.
<StevenL> I've used them.
<StevenL> They are pretty quick too.
<MichalN> This one does 12PPM. More than I need really.
<MichalN> I just need to print the occasional spec.
<MichalN> Wish I had a duplexer, to save paper.
<StevenL> The same thing these days will cost maybe $300, but will last nowhere near as long.
<StevenL> I don't print all that much, so I still get by with my ancient 4P.
<MichalN> I'd be fine with that too, but I got this printer for free :)
<StevenL> As they say, mine is fully depreciated.
<MichalN> Anyway now I can see it - if I drag and drop the file, there will be a special header that sets the printer to PCL.
<MichalN> Which is exactly what I don't want...
<StevenL> There's probably a driver option to force PS output.
<MichalN> I think there is... now I just have to find it.
<MichalN> The settings are spread over too many notebooks.
<MADodel> This is probably a stupid question but there is a Thinkpad 860 on eBay. It is a PPC 603e. I suppose that won't work with OS/2 PPC?
<MichalN> It's very unlikely. The 860 is a newer model.
<StevenL> Humm. I juse installed the 4MPlus driver and I am not finding th option either.
<MichalN> I think that one was only supposed to run AIX, while the older models were supposed to run OS/2 and NT as well.
<StevenL> Maybe you have to install the PS driver for the printer to get PS output.
<MichalN> Yeah, I think I'll do that.
<MichalN> I couldn't find any option and I could see the driver forcing PCL mode.
<MADodel> Specs say it has a SCSI-II CDROM. I never heard of a laptop with internal SCSI
<MichalN> The Power Series ThinkPads were SCSI.
<MichalN> Now you've heard of them!
<MADodel> Did OS/2 PPC support SCSI?
<MichalN> And my old RS/6000 is the only machine I've ever seen with a 68-pin SCSI CD-ROM.
<MichalN> Yes, it was supposed to support SCSI, but the Power Series desktops were IDE only.
<MADodel> Its pretty unbelievable that IBM was supposed to have spent over $500 million on OS/2 PPC and it only supported 4 models.
<StevenL> People do not understand how expensive this kind of R&D is.
<MichalN> I think they just never got to the stage of writing drivers and supporting hardware.
<MADodel> Back in 1995 $500 million dollarswas a hell of a lot of money, even for IBM.
<MichalN> Also for instance the TP 860 almost certainly came out after OS/2 PPC was discontinued.
<StevenL> Yes and no.
<MichalN> You have to realize that when OS/2 PPC was written, there wasn't really a whole lot of systems available.
<StevenL> It's about 2500 man-years.
<MichalN> I think a company like IBM has huge overheads. A small company is probably much better suited to writing a new OS.
<StevenL> That's 500 hundred people working for 5 years.
<StevenL> It all depends on how you look at the numbers.
<StevenL> When you consider hardware development, software development, planning, analysis and all that goes with is these number are not large.
<MichalN> I think one person can do a huge amount of work in 5 years, but throwing more people at a project doesn't necessarily increase the output.
<MichalN> If anything, more people will have much lower productivity per person.
<StevenL> This is true.
<MichalN> 500 people sounds like an awful lot to me, but I don't have any experience working for big companies.
<StevenL> But when you add up all the stuff that needs to get done it is going to take a large group.
<MADodel> But after all that it still only ran on 4 models, and they were very limited in availability. The whole thing sounds like a well they shoveled dollars into.
<MichalN> Yes. It's all the stuff like writing documentation, testing, yada yada yada.
<StevenL> These people are not all sitting in the same room. :-)
<StevenL> Training the sales force.
<MichalN> Mark, I think the "four models" had more to do with the failure of the PowerPC architecture as a whole, not OS/2.
<MADodel> With IBM manyof those people may have never even seen OS/2 or a PPC.
<StevenL> All one needs to do is look an some of the failed venture startup that have blown through 50 or 100M and failed.
<MichalN> Remember that Microsoft had a version of NT for those same systems. NT was shelved too.
<StevenL> Also, the I am sure lots of the code ended up used here and there.
<MichalN> I think it was a well they shoveled dollars into, but a large chunk of the problem had nothing to do with OS/2.
<StevenL> It's not like all of it just hit the trash bin.
<MichalN> Yes, that is true, though it could have been lots more.
<StevenL> This is true.
<MichalN> They never used for instance the 32-bit VIO subsystem or the way improved NLS subsystem with real Unicode support.
<StevenL> It would have been nice, but since they had decided to put IBM out to pasture it makes sense from their POV.
<StevenL> Then again, it depends where you look.
<MichalN> When I spoke to IBMers about OS/2 for PPC, they said that it was too grandiose project that sorta ended up creating more problems than it solved.
<StevenL> The SmartGuide is an example.
<MADodel> microsoft dumped the Alpha version of NT also when it was clear it wouldn't be any competition for the wintel stuff.
<StevenL> It definitely needed an upper management that wanted it to happen.
<MichalN> I think NT on Alpha was supported as long as DEC was paying. Compaq wasn't interested, and so it went.
<StevenL> The SmartGuide which was never quite finished on OS/2, morphed to Java and is used on IBM's AIX based systems for installation and system management.
<MichalN> I think I've seen that on AIX!
<StevenL> You will.
<MichalN> All MS was doing with all those NT versions was hedging their bets. They were prepared should Intel lose in the marketplace, but that never happened.
<MADodel> Michal: any idea on model numbers for the 2 desktop PPC systems that supported OS/2 PPC?
<StevenL> I like the Alpha techincally, but could not really see where it was going to live in the market place. 2
<MichalN> I think any Power Series 830 or 850 should work.
<StevenL> This was back when Sun was a powerhouse.
<MichalN> From MS's perspective, they don't care about the hardware because they're not selling any. If customers want x86, MS will do x86. If customers had wanted Alpha, MS would have done Alpha.
<StevenL> BTW, if you install a 4MP PS printer it will output PS.
<StevenL> It appears that the 4MP drivers are not dual-mode.
<MichalN> I have done that, but then had to kill WPS again and it didn't come back, so I'll have to reboot first to see what happens :-P
<MichalN> Do you have any idea what the difference is between 4MP and 4M Plus? I couldn't figure it out.
<StevenL> Humm. Maybe it's time for checkini.
<MADodel> Only Power PCs I see on eBay are RS/6000
<StevenL> I'm not sure, but for PostScript I doubt it matters.
<MichalN> The only one that could possibly work is a RS/6000 model 43P-7248 (IIRC).
<MichalN> That used the same motherboard as the Power Series boxes, but had SCSI instead of IDE.
<MichalN> And it is very possible that it wouldn't work either.
<MADodel> hehehehe. Sounds pretty hopeless.
<MichalN> I was watching eBay for over a year before I got my PPC box.
<MichalN> And then it only cost me $50 plus shipping.
<MADodel> Guess I'll keep looking. I have a few months.
<StevenL> Was the shipping close to the cost of the box?
<StevenL> You should Mark.
<StevenL> These things take time.
<MichalN> I think the shipping was somewhere around $40, yes, but it was from New Jersey I think.
<MADodel> I have offers for PS/2's to run 1.x versions. I didn't even know there had been 286 versions of PS/2.
<MichalN> There were.
<MichalN> And OS/2 1.x runs on the 386 PS/2s too.
<StevenL> Sure there are. I had about 10 of them running in Japan at one time.
<MADodel> I was told that 1.0 mostlikely will only run on a 286 or maybe afew 386SX
<StevenL> These PS/2's were ISA bus, not MCA.
<MichalN> There even was a 8086 PS/2 which was not really a PS/2 (no MCA).
<MichalN> There were MCA based 286 PS/2s. Model 50 I think.
<StevenL> Yep. Model 30's, IIRC.
<MichalN> Anyway 1.0 runs on a 286 and 386 DX for sure. I think I ran it on some Pentium too.
<StevenL> Interesting thing about these PS/2's is that they were installed in the mid-80s.
<MichalN> The problem with the old versions of OS/2 is that they don't like fast CPUs and they really don't like big disks.
<StevenL> When Y2K came around and we tested them, they were compliant.
<MichalN> OS/2 1.0 was limited to 32M paritions.
<MichalN> Well, I've seen lots of 1980s software that works just fine in the third millennium :)
<StevenL> Back then, that was big.
<StevenL> Some better than others.
<MichalN> Of course. But try finding a 20MB disk these days!
<StevenL> I still have some Pdox/Dos apps.
<MichalN> WGML has an Y2K bug. Says the year is 19105.
<StevenL> Pdox handles Y2K dates OK, but does not slide 2 digit dates correctly.
<StevenL> We've seen them too. :-)
<MichalN> I guess if I was really bored, I could go in and patch it. But I'm not that bored, and I'd rather rewrite the whole thing anyway.
<StevenL> True patching is easy enough if you are willing to spend the time.
<StevenL> I still run Object Desktop and I finally got tired of looking at the sigle digit year, so I patched it.
<MichalN> They were saying '95' but just '5' for 05?
<MichalN> What did you do? Change some printf format string?
<StevenL> Yes that was the easy part.
<MichalN> What was the hard part?
<StevenL> It took a bit more time to move it to where I would enlarge it.
<StevenL> Then I had to patch the relocation table to match.
<MichalN> Right. Sounds like fun project.
<StevenL> It was the usual. Probably 2-4 hours by the time I was done.
<StevenL> I think I still owe someone patches for some other OD versions. :-)
<MichalN> Which version are you running?
<StevenL> The last one 1.5 FK#2, IIRC.
<StevenL> Let me check.
<MichalN> I ran 1.5 for a long time, and then 2.0 for a while.
<StevenL> I think it's FK#4.
<StevenL> What am I saying.
<StevenL> It is 2.0 FK#4.
<MichalN> Ah :)
<StevenL> It's 1.5 that I need to pactch one of these days.
<MikeG> You guys are still going!!
<StevenL> Just kidding.
<StevenL> Sure we are.
<MADodel> holy cow, an actual announcment from Serenity about something
<abwillis> sent email out
<MADodel> Evensent it to the news list
<MichalN> Is it on the web somewhere?
<StevenL> What did they announce?
<MADodel> Svista Disk Image Utility beta drop 2
<abwillis> what they didn't announce is that there is also a new beta drop of SVISTA itself
<abwillis> not much changed in it though
<MADodel> Yep. couple days ago
<abwillis> from the last
<StevenL> They have been busy boys.
<MikeG> Not to jump in but is this the same as wgml in OW ? http://www.uic.edu/depts/adn/infwww/txt/v5327002.txt
<StevenL> The website does not have the announcement yet.
<MADodel> They refreshed it yesterday, but just because the file date had 2004 on it
<MichalN> It's not quite the same WGML, but similar.
<MADodel> Maybe all my complaining finally got someone's attention, or maybe its a fluke.
<StevenL> You complain?
<MADodel> about their lack of announcing anything. I keep telling Roderick.
<MichalN> Ours is Watcom GML, that one is Waterloo GML. They either share a common ancestor or maybe Watcom GML is based on Waterloo GML.
<abwillis> I don't know if you follow the serenity forum but there was some news from Bob St. John a few days ago
<MADodel> the eCS Yahoo group?
<abwillis> no, http://www.serenityvirtual.com/forums/showthread.php?s=&threadid=1695
<abwillis> seperate from this announcement
<StevenL> Look like all the SVISTA packages were updated on the 27th.
<MADodel> Unless its an official announcement, I don't send it out.
<abwillis> no, but I thought it might be of interest
<MADodel> StevenL: exact same files were out on 5/26 but were dated 05262004 :-)
<MichalN> Okay guys, any more questions for me? I'm getting hungry and I'll have to go get something to eat :)
<MADodel> I'm getting tired of having to keep checking netlabs and other places for new releases. I wish developers would send out announcments.
<abwillis> not from me, thanks for your efforts and being here
<MADodel> Thanks Michal
SpeakUp ended at 23:13:34 EDT