home *** CD-ROM | disk | FTP | other *** search
/ Futura 21 / Futura_Issue_21_1997_NOSAUG_Side_B.atr / col80.doc < prev    next >
Text File  |  2023-02-26  |  4KB  |  1 lines

  1. Col80 - An 80-column file reader - ver 1.5                  By Itay Chamiel¢Bug reports to me at: bruck@brachot.jct.ac.il  (InterNet)¢¢Following a discussion in comp.sys.atari.8bit, I decided to write my own 80-¢column file reader, as a demonstration of just how fast an 80-col screen can¢go. This program will ask for a filename, will read it, and will output it to¢the screen, in an 80x25 character matrix.¢¢Download the file COL80.OBJ from the Archive. Load using option 'L' of DOS.¢This program should work with all DOSes, but has only been tested against¢MyDOS and Atari DOS 2.0 and 2.5.¢¢Once loaded, it will display the title screen, and prompt:¢[A]tascii EOL of A[s]cii? (or Q for DOS) _¢¢At this point, you may either [Q]uit to DOS, or type:¢¢A - reckognize $9B (155 - Atari EOL) as the EOL¢S - reckognize $0A (10, ^J - Ascii) as EOL¢¢After that, it will ask you for the filename to read. You may input just the¢filename for use with D:, of input the full device name (even C: if you¢want), and press <Return> to confirm.¢¢You may also press just <Return> for a directory listing. Upon pressing¢<Return> without a filename, it will ask you for the drive number. Just hit¢1 to 9 to use Dn:*.* , or <Return> again to use D:*.* .. The directory will¢display, and you will be back at the filename prompt.¢¢After typing a filename, the program will attempt to open the file. Upon ¢any error, it will notify you with a "Error - try again!" and let you ¢re-enter the name. You can use any type of device or density, RAMdisks, ¢Hard-disks etc., since it uses CIO and depends only on the DOS you are using.¢¢If the file opened successfully, the 320x200 display list will be set up, and¢the file will be read. If there is any error (including <Break>), you will be¢put back at the prompts for another try.¢¢When the buffer fills, or the end-of-file is reached, the file will start¢outputting the first page. The program will use the EOL you specified, and will¢also use 127 as a TAB. Note that TAB only skips 5 spaces, it's not a real one..¢After the page has been printed, you can use:¢¢<Space Bar> - Dump another page (bottom line goes to the top)¢   <Return> - Dump one line¢        <?> - Help, display some info. Any key to go back to file.¢        <Q> - Quit, go back to the prompts. (Not to DOS)¢    <Reset> - Restart program. Inits Disk handler and returns to prompts.¢¢If the file was larger than the buffer, the buffer will refill when it finishes¢dumping to the screen. This means that you'll see the printing suddenly stop¢and see the disk-drive grind away. As soon as the buffer refills, the printing¢will continue from exactly where it left off, i.e. it'll finish the page/line¢it was in the middle of. This means that you'll hardly notice it if you're¢using a RAMdisk.¢¢When the end of file is reached, you will be told. The only thing to do here¢is to hit 'Q' to get back to the prompts.¢¢¢                              Technical notes¢¢The speedy scrolling is achieved by using a simple trick. Each text-line (every¢8 mode F lines) are controlled by an LMS instruction in the Display list. When¢scrolling, each LMS gets the address of the LMS after it, and thus all lines¢appear to move up. The top line is then assigned to the LMS in the bottom, and¢it's 320 bytes (40*8=320) are then physically erased.¢¢                              How it was done¢¢Col80 was written from scratch using the T:EDIT text editor and assembled using¢A65. The character set was created using a character editor (duh) and appended¢to the assembled object file. The final object file was optimized (removed all¢the binary-file headers which A65 loves adding for some stupid reason) using a¢home-brewed program of mine in Turbo BASIC (actually Frost Basic). I then sent¢it to the Atari Archive for all the world to use and enjoy!!¢¢Oh well, I guess that's it.. Happy reading!!  :-)¢¢Itay Chamiel¢September 12, 1992¢¢