[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 80 Columns under cc65?



In article <BKtdk.10220$LG4.7033@nlpi065.nbdc.sbc.com>,
 "Dave Althoff, Jr." <dalloff.gcfn.org@sbcglobal.net> wrote:

> John B. Matthews <nospam@nospam.com> wrote:
> : In article <ojbdk.13727$jI5.11629@flpi148.ffdc.sbc.com>,
> :  "Dave Althoff, Jr." <dalloff.gcfn.org@sbcglobal.net> wrote:
> : 
> : > John B. Matthews <nospam@nospam.com> wrote:
> : 
> : > : Alternatively, if the loader enables 80 columns, printing control-Q and 
> : > : control-R switch to 40- and 80-columns, respectively.
> : 
> : > Be careful.  I always made it a habit to only use the 80-column 
> : > display driver in 80-column mode, and if I wanted to operate in 
> : > 40-column mode, I always went back to the non-80-column display 
> : > driver by printing a CHR$(21).  When I started 80-column mode, I was 
> : > always careful to print something (a few spaces will do) on the 
> : > screen, then clear it, because some versions of the 80-column 
> : > firmware would behave strangely if I didn't.
> : 
> : Experimenting with the firmware already enabled:
> : 
> : putchar('\x11'); // switches to 40-columns
> : putchar('\x12'); // switches to 80-columns
> : 
> : Your suggestion is probably the right thing to do when initializing the 
> : firmware, perhaps in the loader.
> 
> Yes; if you are leaving the 80-column firmware active, then you can use 
> the firmware commands to switch modes.  I should have been more clear 
> about that.

My fault; I misplaced "probably" and left in "perhaps". I meant to 
emphasize adding the old-firmware fix as early in the process as 
possible.

The OP's question invites a quick fix, but the design questions remain: 
Does the application require/tolerate/preclude 80-columns? What if it's 
absent/already enabled? Incompatible? Partially compatible? Preferences? 
Key bindings? Aiieee! But I digress. :-)

> I'm going way WAY back here...back before the //c, the earliest version 
> of the 80-column firmware had some strange bugs in it, particularly with 
> regard to horizontal position.  Most of the unexpected behaviors were 
> cleaned up with the //c ROM, the replacement video ROM in the 'enhanced' 
> ][e, and with the IIgs.  So the problems only appear in the earliest of 
> ][e's, and I think ProDOS actually replaces the 80-column firmware with 
> its own display driver, so under ProDOS it might not even matter.  8-)

I seem to recall that some problems were mitigated with improved 
interrupt handling under ProDOS. In particular, the un-enhanced firmware 
disabled interrupts for relatively long periods of time, losing data at 
1200 bps when scrolling 80 columns:

<http://home.woh.rr.com/jbmatthews/ssc.html>
<http://apple2history.org/history/ah07.html>

Perhaps the odd behavior you mention was fixed in the same revision?

-- 
John B. Matthews
trashgod at gmail dot com
home dot woh dot rr dot com slash jbmatthews