SA! - a replacement for Norton SA Screen Attribute C:\AB1\UTIL\SA!.TXT last updated by Roedy Green 1996 Oct 25 Purpose ******* SA! is a small utility written in assembler to replace the Norton SA (Screen Attribute) utility. It controls the border, background and foreground colours of the DOS text screen. It clears the screen and puts the cursor in the upper left corner. Another utility SAKLONE, also does this, but it requires ANSI.SYS. SA! does not. SA! is not a TSR, and so it takes up no RAM. The disadvantage of my version is the colours stick only until a CLS command or you run a program that changes the background. SA! does hold the colours through CLS when ANSI.SYS is loaded. I have tested it on CGA, Monochrome, Hercules, Hercules Plus, Genius full page display, VGA and Video 7 SuperVGA. It works with non-standard numbers of rows and columns, in video modes 0,1,2,3 and 7 but does not work in graphics modes. Syntax ****** The syntax is similar to Norton BE SA. Upper and lower case is irrelevant in all the examples. You may abbreviate if the abbreviations are unambiguous. SA! on a line by itself will simply display a description of the SA! syntax. This is the same message you get when you make a syntax error. Normally SA! clears the screen to the colours you requested without displaying any text at all. Colour examples: **************** SA! Bright white on blue background with green border SA! Bold Red on Black background SA! Blinking Yellow on Green background SA! Green Foreground on Red Background with Cyan Border Choices for foreground and border intensity (but not background) Bright Bold Blinking Choices for foreground and background colours White Black Red Magenta Gray Violet Blue Green Cyan Yellow Brown Monochrome examples: ******************** SA! Reverse Choices for monochrome Normal Reverse Underline Inverse Black on White White on Black Abbreviations ************* All words may by abbreviated so long as the abbreviations are not ambiguous. e.g. SA! bo blu f on gre wi gra bac The words "foreground", "background" and "border" are just "noise" words. SA! ignores them. You may insert them for readability. The important words are "ON" to introduce the background colour and "WITH" to introduce the border colour. Defaults ******** If you leave out the foreground, usually SA! assumes white. If you leave out the background, usually it assumes blue. If you leave out the border it assumes it is the same as the background. If you ask for blue on blue, for example, SA! will automatically change this to white on blue so that you will still be able to read the screen. (If you want to disable this behaviour, simply remove that code in the "Cleverness" routine and reassemble SA!.) If you specify bold or bright for the background, it will be ignored. Yellow is actually shorthand for bright brown and gray is shorthand for bright black. So, for example, if you ask for a gray background, (bright black) you will end up with just black. Trouble Shooting **************** Symptom: Screen stays white on black Unlike Norton SA, SA! automatically clears the screen. If you put a CLS after SA! you will be right back to black and white, since CLS does not preserve SA!'s colours, unless ANSI.SYS is loaded. --- Symptom: Colours change, but not as requested SA! does not set the palette map. If you have done something unusual to the standard text colours, SA! will not give you the colours you request, but rather it will follow your private colour scheme alterations. DESQview, loves to meddle with colours unless you set up the PIF to set "has own colours=Yes". --- Symptom: Border is not the same as the background shade. The Video 7 VGA card uses a lighter shade of brown when you ask for brown in the border than when you ask for brown as a background. --- Symptom: SA! igores requests about background and/or border colour. The keyword ON is MANDATORY if you want to set the background. SA! BLUE BACKGROUND will NOT work. You need to say: SA! ON BLUE BACKGROUND Similarly if you want to control the border, the keyword WITH is mandatory. If you are running under DESQview, it will not let you change the border colour. --- Symptom: SA! RED ON RED does not work. If you "accidentally" ask SA! to set a colour scheme that would be utterly unreadable, SA! changes your request a little to make it readable. --- Symptom: SA! BOLD RED ON WHITE does not work. It comes out orange on gray. Different equipment interprets the colours differently. BRIGHT WHITE will be white, but NORMAL WHITE will often look gray. NORMAL BLACK will look black but BOLD BLACK will often look gray. Yellows sometimes come out looking brown. Have fun playing with the colours to get the best effects. Author ****** SA! is copyrighted but may be freely used for any purpose except military. Please report bugs and problems to: Roedy Green Canadian Mind Products #101 - 2536 Wark Street Victoria, BC Canada V8T 4G8 tel:(250) 361-9093 mailto:roedyg@mindprod.com http://mindprod.com GETTING THE LATEST VERSION ************************** Look for the latest version at my Web site: http://mindprod.com It would also be helpful if you mentioned the URL or source of where you got your copy. I want to make sure that site is kept kept up to date. -30-