D_Viewer (aka - Don's Viewer) D_Viewer is a simple text viewer with a couple of twist. The idea for the program came from the Amiga world and since the St did not have any- thing like it, figured it was time we did (with a few added options of course). The twists or main features of the program are: 1) To be able to view files without useing the keyboard or holding down mouse buttons. 2) Smooth scroll the text so that it is easy to read and be able to adjust the speed of the scroll to a comfortable reading speed. D_Viewer is released as Freeware, so if you like it, please share it with as many folks as you can. The program was developed on a stock 1040 monochrome system (with a screen accelerator) and does work in medium rez. It has not been tested on Ste's or TT's and not sure how it will work with a blitter chip. The program has been keep pretty simple, because the routines will replace the 'viewer mode' in Dterm. Simple means that there are no dialog boxes, info-lines or on-line help screens. Simple does not mean the lack of search routines, block settings, page marks and the ability to save, print or load. D_Viewer can also be run as an accessary by replacing the .PRG extender with .ACC and run from the root directory on the boot drive. For those that care, D_Viewer was written in assembler. Enjoy... Don Pefley (2/1/91) Commands and 'How to Use' D_Viewer Once a file has been loaded, the screen is divided up into 3 equal horizontal areas. The top and bottom areas are sub divided into 5 zones, each with their own scrolling speed. The closer you get to the screen boundary, the faster the scoll. Needless to say, the top area moves towards the top of the file and the bottom area moves towards the end of the file. The middle area is neutral and all scrolling will stop. To start scrolling the file, move the mouse into a zone and sit back and read. To adjust the speed of the scroll, move the mouse again. Towards the middle of the screen will slow the scroll, while moving away from the middle area will speed it up. Mouse Buttons - The left mouse button is used for advancing a 'page' at a time. The speed and direction of the page depends on the zone that you are in. The right mouse button is used for 'block' settings. See below for more info. Both mouse buttons at the same time will move you immediately to the top or bottom of the file, depending on which area that you are in. Keyboard commands - Note: If you are scrolling, the keyboard commands will not act until the current character line has been completely drawn to screen. Keyboard commands can be entered in either upper or lower case. Help - small alert box to load another file, quit the viewer or just exit (return) to the file that you are already viewing. Undo - immediately quit the program and return to Desktop UP arrow key - scroll 1 line towards top of file DOWN arrow key - scroll 1 line towards bottom of file U - move 1 page towards top of file D - move 1 page towards bottom of file T - move immediately to the begining of the file B - move immediately to the end of the file * - toggle smooth (mouse) scrolling on/off. Default is ON - will smooth scroll. F - search (find) prompt (see below) N - find next occurence of search P - back up to the previouse find M - move immediately to the start of a valid block 1,2,3,4 - jump to a page mark Clr Home - clear all page marks (does not remove block marks) F1 - set a page mark or the begining of a block F2 - set end of block F5 - block alert to print or save the block or just return to the file F7 - alert box to configure the printer - normal, italics or condensed F10 - toggle the search mode from case dependent to NOT case dependent. Default is not dependent. CapsLock - stop scroll until CapsLock hit again Alternate - pause scroll until released Block Commands Blocks are controlled by the right mouse button. Pressing and HOLDING the right mouse button will show the mouse pointer allowing you to move it anywhere on the screen. Once the right button is released, you will have a blinking cursor. This locating can be used for a block mark or page mark. F1 will set this location to a page mark AND the start of a block. F2 will set this location to the end of a block. If you hit the right mouse button again, the cursor will be removed and no page or block marks will be set. Note: In scrolling mode, the right mouse button canbe used to pause the scroll and by hitting the right mouse button again, the scroll will resume at the same speed and direction. The block maybe any size that you like, spanding any number of pages. The end of the block maybe set before the start of the block if you like. Once a valid block has been set, the whole block will appear in inverse mode. The block canbe released by either setting a new end mark before the begining of the current block or a new start mark after the current end point (same as GenSt). Also note that the end block is 1 character before the cursor, in other words, where the currsor is setting is NOT the true end of the block (also the same as GenSt). Once a valid block has been marked, it can be saved to disk (via the file selector) or dumped to printer by hitting F5. You will be warned if the printer is off-line if you try to print. Only one valid block canbe set at any given time. Warning! - do NOT set a block mark in the middle of a tab. D_Viewer uses true tabs and unpredictable marks will be set if you do. Search Commands F10 will toggle the search from case dependent to not case dependent. Not case dependent is about 30% slower than a dependent search but not having to worry about caps makes searchs a little easier. Default at boot up is for not dependent. Hitting the F key will bring up a prompt line for the string that you would like to search for. Up to 20 characters are allowed. The return key will end the string input and start the search. If a match is found, the whole screen will be redrawn at that line with the the match shown in inverse video, unless the match is in a block, then it will be shown in normal video. All searches are performed from the current top of screen line and go towards the end of the file. The next occurence of a search canbe found with the N key. You may backup to a previous match but this only goes 1 place backwards. You will be warned if there are no matches or the last match in the file has been found. If there is more than 1 match found in the last screen of the file, only the first one will be high lighted. Page Marks You can have up to 4 page marks at any given time. The marks are stored in a circle pattern, mening that on the 5th mark, the 1st mark is replaced with the 5th, the 6th replaces the 2nd, ect. Page marks are set with the right mouse button and the F1 key. Place the cursor where you want and hit F1. To jump to the page marks, use the number keys 1,2,3 or 4. All page marks canbe removed via the Clr Home key. Final Comments The smooth scroll of D_Viewer works by moving the screen by raster lines. If you have a screen accelerator - use it and help the poor cpu out some. On the other hand, a color monitor only has half as many raster lines, therefore the scroll is twice as fast. All I can say is play around to see what looks best to you. Remember that the program can run as an ACC by changing the extender. I also have a version of D_Viewer that runs from the auto folder (like DCShow_It) that installs in place of the Show option of the DeskTop. But at this time is still abit buggy and do not like the way that some other auto run programs can steal the vectors needed. All in all, it is nice to see smooth scrolling on my old friend, the 1040 St... Don