I'm playing around with various things on my STe and SatanDisk, including a variety of different TOS versions. Now I have an early version STe with TOS 1.06 as the base TOS and this comes, at no extra charge, with the notorious 'medium res bug', where that TOS version refuses to boot into medium resolution.

I seem to remember there was a quick hack of the desktop.inf file that could cure the problem and force a boot into a medium res desktop. I don't remember the specific details though, and finding things like that seems to be very long and drawn-out, with loads of dead links on the interweb.

So can any knowledgeable chums with a better memory and documentation help out here?

There are lots of things you can do with the new Atari desktops (and with the old ones!); almost as much as with a replacement desktop like NeoDesk from Gribnif Software! Unfortunately, the manuals Atari gives us with the computers don't tell you about all of these great features. I will try to rectify this deficiency.

I have compiled as much information on the NEWDESK.INF file that I could, and thrown in some info on TOS 2.06. This file focuses on Atari's NEWDESK.INF file, and in particular on TOS 2.06, since they are what I have. If you don't have TOS 2.06, don't worry; most of the really useful info in here is applicable to *all* versions of TOS, and some info specific to TOS 4.0x is included, too. I have tried to point out where information may be specific only to certain versions of TOS. With this as a reference, you should be able to modify your DESKTOP/NEWDESK.INF file to do almost anything with your desktop!

I have learned all of this partly through trial and error, and partly through discussions on online services. A lot of the information came to me by way of the NEWDESK topic on GEnie in the Atari Roundtable. GEnie, by the way, is an excellent source of information and support for the Atari line of computers; having been the only official online Atari service, there are more Atarians there than almost anywhere else. I suppose I should state that I have no connection with GEnie other than as a (former) satisfied user. Another excellent source of info and programs is the Internet, where Atarians from all over the world can (and do!) converse and share programs.

If you find that something is wrong, please let me know! If you see something I missed, or if you think I should include some information that isn't in here, let me know that, too. And of course, suggestions are always welcome. When contacting me, include your machine type, TOS, GEM, AES, MiNT, and MultiTOS versions (whichever apply). This will help me decipher different, unknown parameters. If you don't know some of this information or don't have MiNT or something, don't let that stop you from contacting me! But please, try to include at least the TOS version (TOS date will suffice, if necessary; just give me the copyright dates in the "Desktop Info..." menu). Also include your name and some way that I can get in touch with you, such as email address or postal address.

I can be reached at:tjh@ic.net

DESKTOP/NEWDESK BASICS----------------------

The DESKTOP.INF and NEWDESK.INF files in Atari computers contain all the information your computer needs to configure itself. It contains all the names, positions and (for appropriate TOS versions) icon numbers for your desktop icons. It stores all the info on Installed Apps, desktop icons, and window positions (even for windows that have been closed!). If you leave a window open when saving the desktop, the location, current directory, and file mask (for those versions of TOS that support masks) are saved. It stores info on whether or not the key click and system bell are turned on, the repeat rate for key clicks, mouse double click rate and tracking rate, current resolution, keyboard shortcuts for menu items (in TOS >= 2.0x), and lots more. In short, it stores every peice of information that you can configure from the desktop or the standard Atari Control Panel.

When you boot up your machine, the computer loads in auto programs and then reads the DESKTOP/NEWDESK.INF (hereafter referred to collectively as simply "INF") file for information on resolution, windows, etc. If you have Atari's Control Panel (or a replacement), the key repeat rate, printer and serial port configuration, and other information is also loaded from the INF file and configured.

To change the INF file, you need simply alter a setting from either the Control Panel (not the extensible control panel, however) or one of the desktop menus, and then select "Save Desktop." If you do this several times and display the INF file after each save, you will get a feel for which changes to the desktop correspond to changes in the INF file. Before doing this, of course, make a backup of your original INF file by renaming it to DESKTOP.INX. This way if you somehow "break" the INF file, you can always be sure to have a working one handy.

You can view the file directly from the desktop; the INF file is simply an ASCII file! This means that not only is everything in the file plainly visible from the desktop, but you can load it into just about any word processor, text editor, or DTP program and edit it by hand. This has the advantage of allowing you to make certain changes that the desktop doesn't allow for. If you're really familiar with the INF file, you can also make multiple changes in much less time than it would take you from the desktop. The editor, however, must be able to load and save files in ASCII format, and it must not strip trailing spaces from lines (more on this in a moment).

One important bit of information to know and understand when editing the INF file is how TOS reads and applies the information in it. Not surprisingly, the INF file acts as a filter, through which TOS sifts programs and files to apply various actions (running files, assigning icons, etc.). What *is* surprising is that these filters work in reverse order from what you see in the INF file. The *last* entry in the INF file is the *first* filter applied! The way this works is as follows:

For icon assignments, TOS reads from the end of the file to the beginning, comparing each file in a directory to each filter (icon assignment) until a match is found. When TOS finds a match, it moves on to the next file. So if you have a program SQUISHII.APP, and assign an icon to it, that assignment should go toward the end of the file, that way it will be filtered out early on. If you have an icon assingment like #I xx xx xxx @ *.*@ @ *below* the assignment for SQUISHII.APP, then SQUISHII.APP will be filtered out at the *.* (and assigned that icon) rather than at #I xx xx xxx @ SQUISHII.APP@ @ . Hence, you would never see the special icon you assigned to SQUISHII.APP. This is important to understand, for two reasons. The first is that when editing the INF file, you want to work down the file from most general to most specific; getting this order wrong will give you results other than what you wanted. The other reason is that when you make an icon assignment from the desktop, it is saved at the end of the INF file. If you were to make lots of assignments, then do a generic (*.*) icon assignment, all your files would use the generic icon (until you edited the INF file to have *.* be the last filter applied).

For program assignments, TOS reads the INF file in the same way as for icons, and applies filters in the same way. When you double click on a file (whether it's executable or not), TOS starts looking for matches from the bottom of the INF file and works its way to the top. If you were to install a program VIEWER.APP for file type *.*, this assignment would be saved at the end to the INF file, and hence be the first filter TOS saw; all files, no matter what type they were, would cause VIEWER.APP to run and they would be loaded in to it. This is true even for PRGs, APPs, TOSs, etc.; in the INF file, these are just treated as applications installed with no file type. As with icons, if you edit the INF file make sure you work from most general at the top of the INF file to most specific at the bottom.

EDITING THE INF FILE--------------------

Before you begin editing your INF file, make sure that you have a backup of you current, working version! It is possible (and fairly easy, really) to change the INF file so that the computer will become "confused" and not boot!

Probably the first thing to remember when editing your INF file is that NEWDESK.INF can't be larger than 4kb (4096 bytes), and starts causing trouble with the system around 3900 bytes. Similarly, the DESKICON.RSC can only be 64kb (65536 bytes). The newer DESKCICN.RSC (the color icon resource for TOS 4.0x and up) can be larger than this, though I don't know if there is a limit. If you try to exceed the limit, you'll get "Out Of Memory" errors and lots of headaches.

On earlier versions of TOS (less than 2.0x), the limit on DESKTOP.INF is even more restrictive; it can't be larger than 1kb (1024 bytes)! However, you also don't have a lot of icon assignments eating up that space, so it's a fair trade.

One excellent way around this is to have a directory full of different INF files; a specific one for each task. If you put only those application and icon assignments necessary for a particular task, you should have no problem avoiding the size limit. To switch between INF files, then you can just install either Charles F Johnson's shareware product Desk Switch 1.1 or Klaus Pederson's public domain Load Inf as the application for file types of *.INF. That way, when you want to change to a different task, just double click on the appropriate INF file, and away you go with all the key assignments, installed apps, desktop icons, and icon assignments you want for that task.

Another way around this is to get a program like GEMRAM, which loads GEM into RAM, and the program Shell Buffer (SHBUFxxx.PRG), which lets you configure the allowed size of the INF file. Shell Buffer only works when GEM is loaded into RAM.

Both solutions should work great on any Atari, and both have their advantages and disadvantages. Give them both a try and see which works best for you.

Something else to keep in mind when editing your INF file is that TOS expects to find certain formats at certain locations in the file. Line #d, for instance, has to have a certain number of spaces in it since TOS looks roughly 124 bytes into the INF file for the next line (#Z if you have TOS >=1.04 and a program set to auto boot, or #K for the menu key equivalents). That number for the bytes, incidently, also includes carriage returns (EOL characters). Before changing your desktop file, be sure you know *exactly* how many spaces belong in line #d; the wrong number can produce unpredictable results and fatal errors. To find out, of course, just load the file into a text editor that doesn't strip trailing spaces (Word Writer, Alice, Everest, and tons more) and start counting! Be sure to count the return at the end of the line.

Most other lines (but not all of them) in the INF file require a trailing space, so if you edit your file be sure to know which ones need a space and which ones don't.

What this all means, of course, is that if you edit your DESKTOP.INF or NEWDESK.INF file make sure you're using an editor that doesn't strip trailing spaces, and which saves files as ASCII text. And, as always, keep a backup of your original file!

THE KEYBOARD AND INSTALLING APPS--------------------------------

With the newer TOS versions, you can open a drive into a window by pressing and the drive letter. If you want to open a drive into the current top window, you don't have to close the window and then open the drive; just hold down and press the drive letter! The window will automatically be changed to the root directory of whatever drive you selected.

With TOS versions 2.0x and up, Atari has made it possible to assign a keyboard equivalent to any of the desktop menu items. That way you can select a file and hit "I" to Get Info on it. Unfortunately, the mneumonics can get pretty complicated, since there are also items that could use "I" like "Show as Icons" and "Install Icon." "D" could be used for "Sort by Date," "Delete," and "Install Devices." The desktop appears to only allow normal characters (capital A through Z) for these assignments, which gets pretty limiting. Luckly, you can also use control-key combinations! When changing the menu assignments in the Desktop Configuration menu, just hold down the key while pressing your key. Now, instead of accidently deleting a file by pressing "D," you can assign (or , if you prefer) to "Delete," and never have to worry about accidentally deleting a file!

Take note! If you use a control-key combo for a particular menu item, that combo will no longer be available for normal desktop usage. For instance, if you assign to "Show by Date," will no longer be used to open drive D into the currently active window, instead it will be used to delete selected files. Remember:

Alternate + (A-P) = Open the drive's directory into a window Control + (A-P) = Open the drive's directory in the active window

You can get all of the normal Desktop key commands by pressing while at the Desktop.

Not only can you assign a key combo to "Delete," you can also remove the trash icon completely, and free up space for more important icons! Just select the Trash icon and then the menu item "Remove Icon." In fact, since TOS versions 2.0x and up allow you to open drives by pressing and the drive letter, you can remove all the drive icons, too, and replace them with programs, folders, and files! If you need to actually see what's on drive D, just press .

Something users of *any* TOS version can do is install more than one document type for an application! To do this, first install the application for one of the filetypes you want. Then load the DESKTOP/NEWDESK.INF file into an ASCII editor. Make a copy of the installed application line, making sure to keep all the copies together with the original in the .INF file. It will look something like:

#Y FF 04 000 C:\path\GEMVIEW.GTP@ *.PI3@ @

Then rename the installed file type ("*.PI3") to whatever other file type you want. Make sure to keep all of these lines together. After doing this a few times, you might have the following lines in your .INF file:

Editing your INF file manually like this is the only way to install one application for more than one file type, since using "Install Application" from the desktop will just overwrite any previous assignment, rather than adding to it.

Of course, instead of installing an application for a particular extender, you might try editing the lines for a particular *prefix*! You could do something like:

#G 03 04 000 C:\UTILS\FILE_VIE.WER\AV380.PRG@ READ*.*@ @

So that whenever you double clicked on a file like "READ.ME" or "README.TXT," ASCII View 3.80 would be run and the file loaded into it for viewing!

In fact, you can replace the Desktop's boring old [ SHOW | PRINT | CANCEL] by installing an application for all file types. Be careful; since this works as a catch-all, you have to make sure that such an installation is the *last* line TOS checks when you double click. That means it has to be the first application line in the .INF file (remember, TOS uses the DESKTOP/NEWDESK.INF file as a sort of filter, working from the end of the .INF to the beginning. Basically, the place to install an app like this is the line just before the *.APP, *.PRG, *.TOS, etc. is defined. See the annotated INF file below for an example.

NEAT HACKS----------

In any version of TOS you can, of course, change the name of any desktop icon to anything you want. This is true of the Trash can, which can be renamed HAZARD or whatever you want. It's also true of any programs or folders you put on the desktop (in TOS >= 2.0x); Just look at the line of the INF file where that file/folder appears. It will look something like:

#X 07 01 7B FF C:\UTILS\VIEWERS\VIEWER.PRG@ VIEWER.PRG@

The name seen on the desktop will be "VIEWER.PRG." You can change this to "SEE IT!" just by changing the line to something like:

#X 07 01 7B FF C:\UTILS\VIEWERS\VIEWER.PRG@ SEE IT!@

Of course, as I said above, you don't really need the trash or drive icons on TOS >= 2.0x, so why not just get rid of them? You can free up tons of space on the desktop for commonly used programs, files, and folders. It also has the nice side-affect of freeing up space in your INF file, allowing you to have a few more lines of icon or application assignments. This is a great tip for people who use Desk Switch or Load Inf; you can replace the drive icons with INF file icons, allowing you easy access not to your drives but to the work you need to do.

One feature that deserves to be recognized, though it isn't a hack, is the drag and drop feature of TOS >= 2.0x. With this feature, you can put your commonly used programs on the desktops and then just drag the file you want to work on over the app (until the app is highlighted), then "drop" the file. This has the advantage of requiring fewer steps to get working, as well as not requiring you to install the application in the INF file, thereby saving a few bytes of space.

Create INF files specific to programs, put them all in a common folder, and use Desk Switch or Load Inf to switch between them. You can have a DTP.INF, WORDPROC.INF, GEMDRAW.INF, DEGAS.INF, TELECOM.INF, UNARC.INF, etc. This frees up a lot of space in any particular INF file. And with each INF, each type of file used with that task can have its own unique icon, so it's easy to distinguish file types, and you can also have all the installed application info you want! Using just one INF file really limits you in what you can do, so make more!

Reset your keyboard-equivalents for the desktop menus so they make sense! Use normal keys for one menu, and -key combos for the other. You can even try -key combos. Require two keys to be pressed when deleting or formating.

Get a resource editor (like MKRSC; this works with TOS 4.0x icons) and build your own icons, then assign them by hex number to files in your INF file.

Put a folder on the the desktop and save the INF file. Then edit the INF file so that the line containing that folder begins with #X instead of #V. Now when you double click on the folder, the default document displayer is run, and the contents of the folder are loaded in a batch mode. This is an excellent way of viewing new pictures or text files! You can even use masks to control what sort of files load in. Of course, your viewer has to be capable of processing batch jobs.

Make yourself a blank icon (no mask, nothin'). You can now assign short notes to the name of the icon, such as Fkey assignments, short reminders, and whatnot. If you have TOS >= 2.0x, you can put these "sticky notes" on the desktop, too. They are easily editable from the desktop.

INF FILE COMPOSITION--------------------

Below is a (fairly) complete explanation of the lines in the DESKTOP.INF or NEWDESK.INF files. Some parameters only apply to specific versions of TOS. Compare what's below to what is already in your .INF file, and if it's not already there, don't add it! TOS expects certain lines to have a particular format, and adding to these lines can confuse TOS and give you headaches. On the other hand, deleting things can have the same effect, so don't do that either.

Where a description is given by "bits," the following procedure will produce the needed hexidecimal number:

start with the high bit (e.g. bit "7"), and begin writing down the desired configuration as a binary number (1's and 0's) from left to right. Unlisted bits should not be changed. When the number is complete, convert it to hex. Any decent calculator will do this without a fuss. For example: For the "Other configuration parameters" (see below), I want bit 4 set to "filname," so I write a 0; bit 3 I want set to "top window", so to the right of the zero I write another 0; then bit 2 I set "size to fit" on, so I write a 1 to the right of bit 3; bit 1 is not listed so I write a 1 (since that's what it was originally); finally bit 0 I want set to "sort on," so I write a 0. The resulting number is "00110." I set my calculator to "bin" and plug this number in, then convert it to hex by changing the calculator mode to "hex". The resulting number, which goes in the fourth column of line #E is 06.

If you aren't familiar with doing this, I suggest you try it out a couple times and compare it with what's already in your desktop file. Don't try changing anything until you are confident you can get it right! Wrong values can do unpredictable things to your system, including causing it to crash!

I have been unable to determine the usage of some bits. In these cases, I list the bit with a question mark and give the current value in my NEWDESK.INF file. Yours may be different, so check it and use whatever your INF file uses. To check it, convert the current hex value to binary: the rightmost number is bit 0, the digit to the left of that is bit 1, and so on. Converting hex 06 to bin is 110: bit 0 = 0; bit 1 = 1, bit 2 = 1, bit 3 = 0 (not shown), and bit 4 = 0 (also not shown).

And remember, if you find you've made a mistake, just delete the broken .INF file and re-load the old version that you backed up.

All "@" symbols must be followed by a space.

Serial communication settings.

Special thanks to Bill Hallman for supplying the communications settings.

Following this is the full path and file name, followed immediately by an "@" symbol. After the "@" is a space followed by the installed document type (if any), followed by a second "@". Next comes another space followed by any parameters that are to be passed to the program (for GTP or TTP programs). Finally comes another "@" and a space.

For example,

#P FF 04 009 C:\PATH\VIEWER.TTP@ *.*@ @

would install the program VIEWER.TTP as the default document displayer (this then supercedes the desktop [ SHOW | PRINT | CANCEL ]). This line also sets VIEWER.TTP to run when F9 is pressed. There are no parameters passed to this program.

This line installs Guck as the default file viewer. When the file is double clicked on, TOS checks all the #G, #P, #Y, and #F assignments below, and if the file doesn't match any of those, Guck is run and the file is loaded in. Notice that it is the first assignment in the INF file, and hence the last assigment TOS checks. If you moved this one down a few lines (say, underneath #F 03 04 000 *.TOS@ @ @ ), you'd never get any programs to run; everything (except the .INFs and archives) would be loaded directly into Guck!

#G 03 FF 000 *.ACC@ @ @

This line lets you run an ACC as a program, if the ACC is capable of it, by double-clicking on the ACC in any window.

Executable programs and programs to run when files with the appropriate mask are opened. The second two digits of the third column of numbers ("00" of the "200") is the hex number of the function key assignment. "0A" would be F10.Other parameters (for GTP or TTP) can be included before the last "@".

File icons and function key assignments. Notice these act as filters also, and hence files are applied from the bottom up. For example, SQUISHII.APP is assigned icon #3D, but a file called SQUID.GHU doesn't match any filter, it would be assigned the default icon #0B.

Notice if a file is clicked on and is not a *.INF or one of the listed archival types, TOS then checks to see if it is either TOS, TTP, GTP, PRG, or APP (in that order), and if so executes it. If it is not one of these, the remaining installation for types *.* "catches" it, so GUCK will be run and the file will be loaded in. This then "replaces" the desktop [ SHOW | PRINT |CANCEL]. Remember that each of these acts as a filter and that TOS applies them from *bottom* to top; so when you double-click on a file, TOS first checks to see if it is *.INF, and if so runs LOADINF.PRG, then it checks for type *.ARJ, then... through the executables (TOS, TTP, GTP, PRG, APP in that order), and finally if the file wasn't one of those, TOS type *.* (that's everything left) is loaded into GUCK.

Go to Thomas Hopper's Home Page

If I don't answer or appear to have forgotton then email again, I'm scatty!

Thanks people for the replies. I will look for the stefix file one daysoon I'm sure... This question could be a candidate for the FAQ list,Just after I posted this second plea for help I found a similarly wordedconversation in this newsgroup. One respondant suggested that the steowner modify his desktop.inf file to ask for high res (change the line#E D8 12 to #E D8 13 ). I did this and joy of joys.. It works. NowI need to get my home brew program to get error free file transfersto/from unix up and running. The ref to Dr Who i do not understand.

STEs are catching on in Europe, but so are the TOS 1.6 bugs. Many programs don't run at all. Some software houses are releasing STE updates daily. Others, such as Microdeal/MichTron, are publishing programs written specifically for the new machine. The most notorious bug is that the STE insists on booting in low resolution, regardless of the DESKTOP.INF file. Atari U.K. has released a software patch, but there is a three-step manual fix as well.

If I don't answer or appear to have forgotton then email again, I'm scatty!

Cool, didn't know there was such a detailed specification of the desktop.inf file - is that on the wiki? I remember by trial and error trying to set up a custom viewer program (i.e. show/print/cancel) but I seem to recall it caused problems running normal programs.

The various information is dotted about in obscure corners of t'Internet. Other search engines come up with the goods, or if using Google then the key words need to be really specific (else you end up finding a company who wants to sell you a DESKTOP.INF which turns out to be an office desk).

Please post any information that you find, as it's all slowly disappearing. FTP sites are becoming unavailable, and the personal information websites are being simply shut down (AOL being an example). All of the knowledge and time spent is being lost.

If I don't answer or appear to have forgotton then email again, I'm scatty!

techie_alison wrote:I did grab a load from the site which was quite thorough, before it went down a few months back; http://www.pangaelinwillow.net . Hence the comments about getting this stuff archived.

At some point, I got a corrupted 3.06 image (I think) from that site; the image was truncated. Worth watching out for, but I suppose you can just plug the image into Steem/Hatari or another good emulator to check it.

Desty wrote:At some point, I got a corrupted 3.06 image (I think) from that site; the image was truncated. Worth watching out for, but I suppose you can just plug the image into Steem/Hatari or another good emulator to check it.

that is not the right way. some errors are not visible so. and it has nothing with quality of emulator. right way is comparing checksum with proven good one. yes some m5 checksum list is good idea.