80-Bus News


March-April 1984, Volume 3, Issue 2

Page 13 of 51


Full error: ld de,fcb 1d c,close file call jbdos call swap ; Swap CP/M and NasSys page 0 rst prs defm "Disk full." defb cr,0 ret

A Fix for Sys

Many of you disk users who are running under a certain 0.S. are doubtless using Richard Beal’s excellent, although unfortunately no longer available, Sys overlay BIOS. I certainly am, and excellent though Sys is, I have encountered one or two minor problems. The "fix" I am suggesting here is to make the "Automatic Page Throw" code a bit more intelligent. One problem is that although my printer (an MX80 F/T) recognises form feeds, it doesn’t do an automatic "skip over perforation", so I set the appropriate option to allow Sys to do this. When you do this, Sys converts form feeds to CR/LFs. I didnt like this, so I patched (there’s that word again) Sys to output form feeds unaltered. A problem exists, however, in that if a form feed is issued when the printer is already at the top of a page, an extra page throw is sent which results in a page being wasted. Things are further complicated when you consider that some utilities may try to "help" by issuing extra CR/LFs to ensure the perforation is skipped. An example may be NasDis running under Monitor.Com. With Sys and Revas both supplying extra CR/LFs, the listing can get "out of step", so to speak.

The solution I have come up with is to make the "Skip perforation" code in Sys more intelligent: if the printer is already at the top of the page, Sys will "throw away" any extra form feeds, CRs and LFs that may be sent before any printable characters are sent for that page. This code hasn’t had the fullest of tests, but I have checked it against a few trial runs of outputting files which, because I have also got the "line length" check built into Sys, had caused problems before. The listing is the part of module Sysb4.Mac, which contains the printer driver. Both "new" and "old" code is shown, with switches to select the one you want. This should help you if you want to type in my "additions". .

[Ed. – Mr Perkins article now goes into a discussion as to the rights and wrongs of the current legal situation re. BIOS copyright, SYS, etc. As the comments he makes are wholly mis-informed they have been removed, as to comment on them would be sub-judice.]

NASIO It*s good to see that the Editor is trying to draw up a map of all the

I/O ports used by the various boards available. However, the bit about Nasio support perhaps doesn’t go far enough, since some manufacturers don’t do Nasio properly. The 80-Bus specification says that Nasio is taken low to indicate a Nascom I/O address, which to me means whenever you try to access ports 0-7 inclusive, which are the ports used on the N2 card. Therefore it should be high at all other times. It is also an open-collector line. Now some manufacturers simply invert address line A7 and call it "Nasio". I know that Map do this on both the ram and vfc. The clue comes in their documentation, which says that the Nasio link is to be made "...only if no other card is generating Nasio". This implies that the line is NOT an OC line, and that bus

This is an OCR’d version of the scanned page and likely contains recognition errors.

Page 13 of 51