GEOS Source code???

Started by Stephane Richard, June 19, 2007, 04:35 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Stephane Richard

In some more research I noticed this page

http://members.elysium.pl/ytm/html/geos.html

The dude seems to have the code to GEOS (or something 99% close to the original GEOS source code).  And something called GEOS 2000.  Anyone know about this more than I do?

I'm posting but I sure don't want to boast warez and hacks and whatever so if this isn't a good link remove it at once, it seems to be legit enough which is why I posted it here in the first place. :-)
When God created light, so too was born, the first Shadow!

MystikShadows

hydrophilic

Thanks for the link.  From what I've seen the source is reverse-engineered, but it's better than nothing!

It should be usefull for anyone who wants to write a device-driver.  I remember creating a printer driver for my Okidata 120 NLQ printer and this would have come in handy.  FYI, the NLQ version of the device puts tiny gaps between printer rows when used with the Okidata 120 standard driver provided with GEOS; I believe this is due to the offset-printing method used for Near Letter Quality printing.  I re-wrote the driver to send an 'advance by pixel' command instead of a simple CR ($13) and this solved the problem.

It was pretty easy since I only had to modify an existing driver but I was never able to write one from scratch which is something I wanted to do for disk access and input device(s).  This now seems possible thanks to the source code.

xlar54

We might want to consider mirroring this.  Could come in handy.

Stephane Richard

Well I emailed the author today.  Not sure what will happen but the email didn't come back so far so it looks like the email is valid...will keep you all posted on any reply I get and when the mirroring will take place.
When God created light, so too was born, the first Shadow!

MystikShadows

11001010

Quote from: hydrophilicIt should be usefull for anyone who wants to write a device-driver.  I remember creating a printer driver for my Okidata 120 NLQ printer and this would have come in handy.
So, how well does that driver work?  Do you still have it?  I happen to have one of those printers.  My biggest gripe about GEOS was the totally crap printed output.  How good does GEOS print to the 120?

Andrew Wiskow

Quote from: 11001010So, how well does that driver work?  Do you still have it?  I happen to have one of those printers.  My biggest gripe about GEOS was the totally crap printed output.  How good does GEOS print to the 120?
GEOS and GEOS128 print out just fine to my Star SG-10C and SL-10C printers using the "Comm. Compat." printer driver.  :-)

-Andrew
Cottonwood BBS & Cottonwood II
http://cottonwood.servebbs.com

hydrophilic

Quote from: 11001010So, how well does that driver work?
It works very well (for a dot matrix printer).  I remember submitting a paper in high school and the cover had the title in HUGE text (92pt if I remember).  The teacher was very impressed and you could almost hear the sound of her jaw dropping when I told her it was done on a Commodore :)

Quote from: 11001010Do you still have it?
I'll look on my GEOS disks and see if I can find it.  Hopefully I can distinguish my version from the original file...

11001010

Quote from: wiskow
Quote from: 11001010So, how well does that driver work?  Do you still have it?  I happen to have one of those printers.  My biggest gripe about GEOS was the totally crap printed output.  How good does GEOS print to the 120?
GEOS and GEOS128 print out just fine to my Star SG-10C and SL-10C printers using the "Comm. Compat." printer driver.  :-)
"Just fine" can be pretty subjective, I guess.  Does it look better than the default font on your printer?  If GEOS output isn't even as good as the built-in NLQ font on the printer, I don't see much point in using it.  That was my experience with GEOS in the 80's.  I pre-ordered and was very very excited to get GEOS.  I could never get printed output that was as good (or even close) as the built-in font on my printer, so I wound up going back to using Paperback Writer.

Guest

Quote from: 11001010
Quote from: wiskow
Quote from: 11001010So, how well does that driver work?  Do you still have it?  I happen to have one of those printers.  My biggest gripe about GEOS was the totally crap printed output.  How good does GEOS print to the 120?
GEOS and GEOS128 print out just fine to my Star SG-10C and SL-10C printers using the "Comm. Compat." printer driver.  :-)
"Just fine" can be pretty subjective, I guess.  Does it look better than the default font on your printer?  If GEOS output isn't even as good as the built-in NLQ font on the printer, I don't see much point in using it.  That was my experience with GEOS in the 80's.  I pre-ordered and was very very excited to get GEOS.  I could never get printed output that was as good (or even close) as the built-in font on my printer, so I wound up going back to using Paperback Writer.
GEOS drivers are worlds better than they were when GEOS first came out.  You do have to be selective about what printer you choose, and what interface as well.  If you want the best output you can use a LaserJet 4 via a GEOCable which Ramswell will happily make for you.  You do need the GeoLaser software for best results which takes GEOS documents and completely controls the printing process.  I do know Robert Bernardo uses this type of setup and he would be a great resource for answering your questions on getting the best results from GEOS output.

hydrophilic

Quote from: 11001010"Just fine" can be pretty subjective, I guess.  Does it look better than the default font on your printer?
The Okidata 120 NLQ printer driver I have does NOT look as good as NLQ text mode.  Other printers can give better output.  Since that is the only printer I had for my Commie, it was always a trade-off.  Do I want sharp monspace text, or do I want proportional text (in a variety of fonts) and graphics.  For a simple letter or essay I would use text mode but for science and economics reports I would use GEOS.

The Oki 120 NLQ (like others I presume) achieves its results by double-printing a line.  Each time it prints the same info but at half 'intensity' and slightly offset.  The offset can be done in software, but there is no command to set 'intensity' so there is no way (short of moding the internal ROM) of getting similar results with graphics (geoWrite output is one huge bitmap per page, AFAIK).

Having read that, you are probably not interested in the GEOS driver anymore but before I read that, I checked my collection and found my patched driver on my GEOS disk.  I looked at the info sector and sure enough, there was my name as the author along with a comment about our hacking group from back in the day...

Unfortunately when I tried to read the file itself, I kept getting read errors (I'll say it again, I HATE FLOPPIES).  I cleaned the disk heads and kept reseating the disk trying to read the file data... but the errors kept getting worse... and worse.  

Eventually I looked at my original GEOS disk and was horrified to see that track 18 had been literaly eaten by the drive!  See for yourself


Normally this would mean the file is gone forever but I had the directory sectors in memory so I knew where the file data was located.  I was able to get most of the data (which was on track 8 no where near track 18) but I was still getting errors.  Notice in the photo a BIG gap (you can actually see through the disk) where track 18 is and gaps are forming around track 7 (info block) and track 8 (the file data).  I've managed to retrieve most of the file data but one sector still eludes me :(

That one sector can only be partially read with 23 data checksum error.  The first 40 bytes are so are intact but the rest is garbage.  If you really want the file, I can dig down to the GCR level and do some bit-shifting to recover it.

This particular disk made a squeeling sound when I was trying to read it so let it be a lesson to all floppy users.  If your disk makes any funny sounds (compared with others), back it up and fast!!

This may sound like common sense, but I have other disks that don't sound quite right but this is the first time I have seen one actually eaten!! :( :( :(  I wonder if it is due to the heavy use of GEOS in previous years or poor quality of the disk itself?  I have older disks that also got heavy use and that haven't been eaten... yet. :/

I tried looking on other disks to find a copy of the driver but no luck.  However I also have the orginal unmodified file to work with also.  I believe I can reconstruct the file given some GCR hacking and a little time (well a few hours).

ANYWAY the important part of the driver is to replace the normal print#4,CHR$(13) at $7be8 with the following code which I simply appended to the end of the original file (at $7c07)
LDA #1B ;escape
JSR FFA8 ;serial output
LDA #A   ;I believe this is for pixel-advance command (fine-tuned line feed)
JSR FFA8
LDA #C  ;12 'pixels'
JSR FFA8
LDA #F  ;I believe this is to re-set graphic mode
JSR FFA8
LDA #8D ;carriage return without line-feed
JMP FFA8 ;serial out and return to caller

BTW the file load address is $7900 (not stored on disk) and starts with a jump table.

RobertB

Quote from: plbyrdYou do need the GeoLaser software for best results which takes GEOS documents and completely controls the printing process.  I do know Robert Bernardo uses this type of setup and he would be a great resource for answering your questions on getting the best results from GEOS output.
GeoLaser drivers work with Postscript 1 and Postscript 2 printers (though I've never tried them with a Postscript 3 printer), thus making it possible to get true letter-quality (well, if you don't include daisywheel printers).  Postprint 2 and Postprint 3 for Wheels 64/128 accomplish the same thing for Postscript printers; however, Postprint is more complete in that it gives you some control over the printing process, whereas GeoLaser does not.

If you do not have a Postscript printer, then you can try Perfect Print (a.k.a. GEOS LQ) which gives you multiple-strikes during the printing process and gives you near letter-quality.

CommVEx info at http://www.portcommodore.com/commvex or http://www.commodore.ca/forum
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug