[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Printer and Prodos Problems with LC II IIe emulator.
On Mon, 25 Feb 2002, Self Violator wrote:
>
>
> This is for my dad. Hope someone can help him.
>
>
> PRODOS DATE PROBLEMS
>
> SYSTEM CONFIGURATION
> Macintosh LC II with Apple IIe Card (Version 2.1 Copyright 77-92)
> and ImageWriter II printer, ProDOS Version 1.9, 16-Jul-90
>
> THE PROBLEM
> Currently when I save a file in the IIe partition of the computer, the
> date is set at 91.
> When I use the System Date and Time Update I get the following reesults:
> 02-> 91, 95->91,90->91
> There is at least one directory that is dated at 98. What I did to get
> that I canıt remember.
> When I set the Macintosh date to(20)03 the ProDOS date becomes
> (19)86!!! What concerns me is that at that point a current modification
> date will precede the last modification date so that when I go to
> backup files they will not be recognized as being more recent than the
> previous - which will be a real pain.
> I have tried looking at the System Date and Time Update Basic Program -
> but got nowhere (maybe my indequacy). Also the ProDOS system using the
> ProDOS Technical Manual but to no avail.
> Is a newer ProDos Version available? Would this correct the problem?
> WOULD A MORE RECENT APPLE II e CARD (IS ONE AVAILABLE) FIX THIS?
>
ProDos contains a table that allows it to calculate the date. That table
needs to be updated every 6 years to keep current. There are programs
available that will do this.
>
> PRINTER PROBLEMS
>
> SYSTEM CONFIGURATION
> Macintosh LC II with Apple IIe Card (Version 2.1 Copyright 77-92)
> and ImageWrite II printer
>
> THE PROBLEMS
> I. Overprinting (No line feed)
> What happens: Whenever I am in Apple IIe mode and turn on the printer
> to dump a program written in BASIC any line longer than the regular 80
> character width is printed on itself. This also happens in any BASIC
> program that attemps to print text of more than 80 characters.
> (There are NO text printing problems in Macintosh mode OR IN APPLE MODE
> when I use my GUTENBERG word processer - which generates it own control
> stuff.)
> Trial Solutions: According to my ImageWriter II Ownerıs GUIDE ( the
> Ownerıs MANUAL specifies Apple II, II Plus, IIc, IIe, III, Macintosh,
> Macintosh XL/Lisa - does not say the LC II - but itıs the only manual I
> have. The GUIDE does not mention any specific computer.) p.87 ³If the
> printout shows the entire document printing on one line ... the problem
> is line feed. A line-feed character causes the printer to advance the
> paper one line every time your software sends a carriage return
> (meaning the end of the line.
> The GUIDE suggests some fixes:
> Setting switch SW1-8 (inside the printer) to closed - doesnıt work
> (????)
> Sending software line feed signals. According to the Quick Reference
> Card there is a Function - Add automatic line feed after carriage
> return - ASCII code sequence 27;68;128;0 that should do it. So (in the
> case of text-to-print in a program) I would turn the printer on (SW1-8
> open)(? chr$(4);²PR#1²) (whether the screen is in 40 or 80 mode seems
> to make no difference), send the sequence and attempt to send text of,
> say, 140 characters - doesnıt work (????)
> Is it possible that for some reason no carriage return is occuring?
> There is a Function - Add carriage return before line feed - ASCII
> 27;108.48, that I tried to incorporate with no success.
> (That it CAN be made to work somehow is clear since it does in the IIe
> Gutenberg situation.)
> WOULD A MORE RECENT CARD (IS ONE AVAILABLE?) FIX THIS?
>
You already know that you must have a line feed to avoid overprinting.
That line feed may be generated by the software, the interface card, or
by the printer itself.
To keep things simple, I prefer to have line feeds turned off at the
interface card.
To have the IW automatically generate line feeds by default set SW1-8 to
closed. This does work. It is how I have my system set-up.
No LF on CR (default) Open
LF after CR Closed
Then, to print a Basic program listing use:
PR#1 turn printer on
PRINT "I80N" where I=Ctrl-I, makes sure line length is 80.
LIST print listing
PR#0 turn printer off
So I don't have to type these commands each time, I have them in a text
file called LIST. All I have to do is EXEC (-)LIST and it automatically
prints the listing.
Setting the line length to 80 works by having the interface card generate
the carriage return, while the printer provides the line feed.
Since I have figured how to print from Basic to a Deskjet thru a Super
Serial Card, I have had to rethink some things. The following works by
having then IW provide both a line feed and carriage return when the line
is full. This has the advantage of being independent of the cpi setting,
but could potentially interfere with other programs.
PR#1 turn printer on
PRINT "I255N" set line length to 255
PRINT "ED @" where E=Escape, @=Ctrl-@ | ESC D SPACE CTRL-@
LIST
PR#0
A similar technique should also work with text files that have blocks of
text without carriage returns. But instead of a line length of 255, you
should set it to unlimited (on a Super Serial Card that would be Ctrl-IR
to reset the card).
You can reset SW1-8 or SW1-6 within software by sending one of these
sequences to the printer. The "ESC D" and "ESC Z" commands are used to set
the switches.
SW1-8
ESC D {@} CTRL-@ 27 68 128 0 No LF after CR
ESC Z {@} CTRL-@ 27 90 128 0 Add LF after CR
SW1-6
ESC D SPACE CTRL-@ 27 68 32 0 Add LF when line is full
ESC Z SPACE CTRL-@ 27 90 32 0 No LF when line is full
From Basic use:
10 PRINT CHR$(4);"PR#1"
20 PRINT CHR$(27);"Z";CHR$(128);CHR$(0)
730 PRINT CHR$(4);"PR#0"
Be aware of the gotchas. A few programs, such as Appleworks, ask whether
your printer needs line feeds. But most programs assume you need the line
feed and provide one whether you want it or not. That can result in
double-spacing.
Most programs that provide a line feed do it by simply sending one to the
printer, but there are those that set the switches. So you shouldn't
assume your printer or interface card is in a certain state at the end of
a program.
As for Gutenburg, try running the program above to set the line feed after
carriage return switch and then try printing from Gutenburg.
I hope this helps.
jim