Welcome to:
At the time of its release (mid 1994), much discussion went on in the comp.sys.atari.8bit Usenet newsgroup about the Atari 8bit emulator for IBM / MSDOS based computers, PC Xformer 2.0 (XF2 for short). Many people in the 8-bit community had gotten fed up with the XF2-based questions which did not pertain to them, or to the very simple questions which came up time and again which bothered regular readers / digest subscribers.
This file was created to reduce the number of 'newbie' and XF2 questions. Now it's becoming a fairly good reference (and got me the job of writing the commerical 3.0 release's documents!).
This FAQ will present answers to simple questions like "how do I turn off BASIC" (a good answer to that of course is, READ THE FRIGGIN' MANUAL) and "how do I get a disk directory?"
It will also direct people who are unaware of the large amount of Atari 8-bit support (NOT NECESSARILY EMULATOR SUPPORT) and perhaps become a supplement to the many official and unofficial files floating around the net (like the official FAQ, the Vendor/Developer List, the Who's Who list, etc.).
READY
" mean?
This is the Atari BASIC prompt. See below for hints on Atari BASIC.
The program may not work under the Atari 800 Operating System, it may require the XL/XE Operating System. Be sure you're in 800XL or 130XE mode. (Note: Not all (versions) of emulators support XL/XE modes!)
It may not work under the XL/XE Operating System (rare cases), switch to 800 mode.
Be sure you turned BASIC off before trying to load it if it cannot run with BASIC on.
It might be a BASIC program! Be sure you're in BASIC and use the BASIC
"RUN
" or "LOAD
" (and then "RUN
")
command. Also, be sure it works with the BASIC you have. Some programs
only run in BASIC XL or XE (which are both cartridge-based BASIC's not
easily available to an emulator), and some run with TurboBASIC XL
(disk-based).
It may just refuse to run on the emulator.
To toggle BASIC on and off in PC Xformer, press [SHIFT]-[F10].
To toggle BASIC on and off in Rainbow, ???.
To toggle BASIC on and off in Atari800, ???.
To toggle BASIC on and off in XL-It!, ???.
To toggle BASIC on and off in ST Xformer, ???.
To toggle BASIC on and off in ACE, ???.
It may use player/missle collision detection which is not supported on some versions of emulators.
See "Why doesn't this program load?", above.
To exit PC Xformer, press [F5]. Note: this does NOT temporarily 'shell' or 'jump' to MSDOS.
To exit Rainbow, press [Apple]-[Q] or select "Exit" from the "Apple Menu".
To exit Atari 800, ??? or close the window (in X Window).
To exit XL-It!, ??? or close the window (in X Window).
To exit ST Xformer, ???.
To exit ACE, ??? or close the window (in X Window).
In BASIC, type "DOS
" at the "READY
" prompt.
Reboot without BASIC on.
Be sure you have a DOS-bootable disk image installed in drive 1 ("D1:").
To "install" files as though there were plain disks with PC Xformer, simply
add the files to the command line and use them as their respective drives (be
sure the first drive is a DOS-bootable disk image).
Example: XFORMER MYDOS45.ATR filename.ext
To use a file from your Mac in Rainbow, make sure the disk image in drive 1 has enough space for the file, and select ???. The file will be added to that disk image.
To use Unix files in Atari800, use the H drive. ???.
To use MSDOS Unix files in XL-It!, ???.
To use MSDOS or Unix files in ACE, ???.
Use the MSDOS program S2PC which allows you to access files within a MyDOS/compatible .ATR disk image. S2PC let's you read, write, delete, change directory, and view the directory of a MyDOS/compatible .ATR disk image. It can be used via command-line parameters from MSDOS, or as a menu.
Use the MSDOS program ATARIMG, which is much like S2PC but has a nicer, more graphical (less-menu driven) interface. (Unfortunately, this doesn't run on all IBM's!)
Use the Mac program Virtual Disk Editor ???.
Refer to the XFormer and SIO2PC manuals for details on these files.
Simply put, they are Atari disks, stored as files which are as big as the disk they represent (an 88k disk image will use 88k on the IBM). .ATR files are used by SIO2PC and APE (see below) as well as most Atari emulators. .XFD files are used by ST Xformer and PC Xformer.
Refer to the SIO2PC manuals for details on this program.
Refer to the APE manual and SIO2PC hardware manual for details on this program.
These are a programs which run on IBM/compatibles under MSDOS. (APE also runs fine under "dosemu" for IBM/compatibles running Linux). With the use of of a simple (and relatively inexpensive) cable, the software makes the IBM act as though it were a number of Atari peripherals. SIO2PC emulates up to four disk drives (any drive ID numbers from 1 to 8 are allowed) and a printer. APE emulators up to eight disk drives, a printer, and a modem (RS232). They use disk image files (.ATR's) and can also let the Atari access plain IBM files. SIO2PC does this much like PC XFormer does, making the single file its own disk. APE allows you to navigate your PC's drives through an Atari drive. The printer emulation of these programs redirect Atari "P:" writes to the PC's printer. SIO2PC can also direct the output to the screen or to a plain IBM file. Different text translations/conversions are available. (APE also allows keyboard macros, command key redefinition, the ability to save the current drive/etc. configuration and load it later as a "block", and the ability to both emulate copy protected disks (with it's own extension of the ".ATR" format, the ".PRO" format (which will hopefully be used in future versions of Atari emulators)) and create disk images from copy protected disks (with a special cable). SIO2PC may soon have this ability as well, since the documentations say it has been planned for a while.)
Refer to the XFSIO manual for details on how to use this program.
XFSIO is a shell for PC XFormer, XLiT!, APE and SIO2PC which allows you to set the command switches for the previously mentioned programs. It also allows you to comment each 'virtual disk' with up to 132 characters, and can search the database to find which disk a particular title is on.
Note: This section will simply discuss Atari BASIC, the Atari OS, and Atari DOS 2.5 and MyDOS 4.5x (because these topics seem the most relevant to the less-knowledged/experienced Atari 8-bit users). No emulator-specific information will be presented.
AtariDOS presents the user with the following commands which are identical to MyDOS's commands: A,B,C(no swaping),D,E,F,G,H, I(some densities),J,K,L,M,N
AtariDOS 2.5 presents the user with the following commands not present or not the same as MyDOS's commands:
First, you need to have booted with a DOS. All but one DOS is on disk (SpartaDOS X is on cartridge). When the Atari boots up, it does some of its 'boot-up stuff' which includes looking for a disk drive connected and turned on which is set up as drive #1. It then begins to load from the disk's "boot sector". If none exists or there's a nasty error on the disk, you get the "BOOT ERROR" notice until the error is fixed. (On SpartaDOS disks, even non-bootable disks have a boot sector, but all the boot sector is is a small program which displays a 'not a boot disk' error).
To end the digression, the answer to 'how do I access the disk drives' starts with 'you must boot the Atari with a DOS'. Check the 8-bit FAQ and the UMICH and other FTP archives for lists of DOSes available for Ataris, but the most used are Atari DOS (for compatibility with almost ALL older software), MyDOS (for an Atari DOS compatible high-end DOS), and SpartaDOS (for a very high-end DOS which looks much like MS-DOS but unfortunately cannont run all software which runs fine with Atari DOS and MyDOS.) Note: SpartaDOS does NOT run on Atari 400's and 800's (except the cartridge versions and I believe disk version 1.1). Now that you have a DOS loaded, the Atari understands the "D:" device (see below for Atari devices). Since there is more than one disk drive, you have to be able to tell them apart. The Atari uses numbers when it has more than one of the same device, so "D1:" is drive 1, "D2:" is drive 2, "D3:" is drive 3, etc.!
After the "D:" device name comes the filename. Of the most used DOSes, only MyDOS supports lowercase letters in filenames, but since most programs force uppercase entry for filenames, nobody really seems to use lowercase in their filenames.
Atari DOS and MyDOS give you the "C" command in their menu interface. When it asks for a source and destination, you can use wildcards (* and ? like in most other DOSes) to copy more than one file at a time. You can also present no destination so that a file can be copied from one disk in drive 1 to another disk in drive 1, for example, and the DOS will ask you to insert each disk.
Subdirectories are places where files go which are just like the normal directory of a disk, except the they happen to be WITHIN that normal directory, or even another subdirectory. For example, you can have your disk divided up into the "GAMES" files, the "GRAPHICS" files and the "SOUNDS" files. A directory of the disk (the "root" or "base" or "trunk" directory) will simply list the three subdirectories, "GAMES", "GRAPHICS" and "SOUNDS". Then, if you ask for a directory listing of the "GAMES" subdirectory, you will see the files (and perhaps other subdirectories) within the "GAMES" directory. Think of it as a tree. For people familiar with Macintoshes, "Folders" are simply subdirectories. A window which appears when you open a "Disk" Icon is the "root", and all of the "Folders" within it have more windows in them which also have file and folder icons.
Here's a comparison to using subdirectories on different DOSes
root 'GAMES' 'SPACE' within 'GAMES' AtariDOS D: n/a n/a MyDOS D: D:GAMES: D:GAMES:SPACE: SpartaDOS D: D:GAMES> D:GAMES>SPACE> MSDOS (IBM) \ \GAMES\ \GAMES\SPACE\
Note, only Atari DOS would be using drive 1 here, all other DOSes are not necessarily using drive 1, and MyDOS and SpartaDOS may already 'be within' a subdirectory.
In MyDOS and SpartaDOS (and MSDOS), you can change the 'current'
or 'default' directory to a different place (a different drive or
a subdirectory). "D:" can stand for "D1:" (like AtariDOS always
does) or "D2:GAMES:SPACE:
"! PLEASE READ THE MYDOS OR
SPARTADOS DOCUMENTS FOR DETAILS ON THIS!
As stated before, the Atari has devices. "D:" is added when a bootable disk in drive 1 is read. Other exist as well:
As stated above, just use the "C"opy command, then use the file
you wish to print as the 'source', and "P:" as the 'destination'.
Example: "D1:DOCUMENT.TXT,P:
"
READY
" mean?
Again, this is simply the prompt that Atari BASIC (and most older BASIC's) presents the user when it is in "Immediate" mode.
RUN
" command.
NEW
" command.
CLR
"
command.
LOAD
" command followed by
a filename (see below). To load and run a program, use the
"RUN
" command followed by a filename.
SAVE
" command followed by
a filename.
LIST
" command followed by
an optional destination device ("D:file.lst", "P:"rinter) and
an option start and end set of lines seperated by (a) comma(s).
A (set of) file(s) will be created explaining all of Atari (and Turbo) BASIC's commands and their usage. (A larger file may be produced which will be based on examples provided in the Atari BASIC Reference Manual). (As of August 1, 1995, these particular files do not exist).
DOS
" to quit BASIC and return to DOS.
BYE
" to quit BASIC and exit to the OS's "bye"
routines (Atari Memo Pad on 400/800's, Atari logo on 1200XL's, and
Self Test on other XL's and XE's). (Note: On 1200XL's, use [HELP]
to go to the Self Test when the Atari logo appears).
Strings must be "dimensioned" like arrays in Atari BASIC. Strings
are special character arrays. See the BASIC usage/etc. files mentioned
in the answer to question 2. Simply put, to make a string that will
accept up to "#" character, use DIM [name]$(#)
. Example:
DIM A$(10)
- now A$ can contain between 0 and 10
characters.
Use the "GRAPHICS" command to switch between the following screen modes: (Note: All modes except 0, 9, 10 and 11 have four lines of 40 x 24 x 2 sized text covering the bottom of the screen. Add "16" to the mode number to remove this window (but do not make any PRINTs or PUTs to the standard output otherwise a GRAPHICS 0 screen will appear))
(Note: Add "32" to the mode number to keep the screen from clearing when it appears. One problem, however, all screens overlay each other so unless you only use certain modes at certain times, parts of some screens will become (or start out) with 'garbage' on them.)
Commands available in Atari BASIC for manipulating simple graphics include:
PLOT
x,y - plot a pixel
POSITION
x,y - position cursor
COLOR
c - set drawing color (c=color or character value)
DRAWTO
x,y - draw a line from cursor location (set with
"POSITION
", "PLOT
", "DRAWTO
" or
"LOCATE
")
LOCATE
x,y,r (where r is where result will be stored)
SETCOLOR
c,h,l (c=palette location, h=hue, l=lum)
Note: COLOR
command colors are not identical to
SETCOLOR
command colors:
COLOR 0
will draw using the background color, set with
SETCOLOR 4,hue,lum
COLOR 1
will draw using color "0", set with
SETCOLOR 0,hue,lum
COLOR 2
will draw using color "1", set with
SETCOLOR 1,hue,lum
COLOR 3
will draw using color "2", set with
SETCOLOR 2,hue,lum
Except in GRAPHICS mode 10, where COLORs 0, 1, 2, and 3 must be
POKE
d into memory locations 704, 705, 706 and 707 (the
player/missle graphics color locations). Examples of this will
be presented in the BASIC usage files. (Sorry)
Remember, XFormer 2.5 doesn't support sound! (XF3.0 does)
But anyway, in Atari BASIC:
SOUND c,p,d,v
The buzzer character is CHR$(253)
aka [CONTROL]+[2] (NOT
[CONTROL]+[G])
The Atari "E:" device (standard input/output which is the "editor") allows the following characters for editing:
Key: AtASCII #: Use: ----------------- -------- --------------------------------------------- Atari none Turn inverse on/off (Atari 400/800 kybds) Inverse [Triangle] none Turn inverse on/off (Atari XL/XE kybds) CAPS none Turns caps-mode to lowercase (400/800 OS) CAPS none Toggles caps-mode from upper to lower (XL/XE) Sh-CAPS none Turns caps-mode to uppercase (all OSes) Ct-CAPS none Turns caps-mode to [Control]-[Lock] (all) Up ([^-]) 28 Move cursor up Down ([^=]) 29 Move cursor down Left ([^+]) 30 Move cursor left Right ([^*]) 31 Move cursor right Space 32 Move cursor right (overwrites w/Space char) BackSpace 126 Move cursor left (deletes previous char) Delete ([ShBkspc]) 156 Deletes a (logical) line (1-3 physical lines) Insert ([Sh>]) 157 Inserts a physical line Ct-Delete ([^Bksp]) 254 Deletes char under cursor, pulls rest left Ct-Insert ([^>]) 255 Inserts space under cursor, pushes rest right ClearScn ([^<]) 125 Clears screen Bell ([^2]) 253 Sounds buzzer TAB 127 Moves cursor to next TABstop ClrTAB ([^TAB]) 158 Clears any TABstop under cursor SetTAB ([ShTAB]) 159 Sets a TABstop under cursor ESC 27 Sets ESCape (next edit char after is shown, not done, non-edit chars shown (like normal)) RETURN 155 Sends End Of Line (moves cursor to lowerleft of next line, accepts input)
Note: Inverse characters have values of the normal version of the characters plus 128. (The only non-viewable inverse character is inverse-ESC, or what would be the [ESC],[RETURN] combination. The character exists, but must be set into screen RAM by hand. Oh well, at least you still have 255 easily viewable characters! [grin])
As shown above, you must have an ESC sent before them.
PRINT
statement, you must have it
send an ESC beforehand, so first type [ESC],[ESC] to make an ESCape
character appear, then type [ESC] then the edit key and the character
for that edit key should appear.PRINT
statement is executed, the first ESCape
(which you typed as two [ESC]'s) will make the editor SHOW the following
character (even if it is an edit character), then the character
which you entered (with [ESC] and then the edit key) will make
that character appear. This makes it difficult to align a set of
PRINT statements which make a multi-line picture or menu which uses
viewed edit keys.Set the memory location "766" to "1" with the command "POKE 766,1" to turn on the no-edit mode (ALL characters except End Of Lines will appear, even ClearScreens!) When you want to go back into normal mode, set the location back to "0" with "POKE 766,0".
THIS IS THE FIRST EVER SCREEN SAVER! This is called "Attract mode" as was used on the Atari 2600 and Atari 400/800/XL/XE series (and probably on the 5200 and 7800 but I cannot confirm this). When a key hasn't been pressed for 7 or 9 (depending on OS, model, etc) minutes, the screen colors begin changing, thus protecting your TV or monitor from having an image burned on it.
POKE 77,0
" at least once every few minutes
(IF the screen is active, otherwise turning it off would be kinda
useless).
POKE 77,128
", voila! instant attract mode!
The following commands are available to Atari BASIC's (and also variations on these are available in most other Atari languages!):
OPEN #a,b,c,d$
OPEN #1,4,0,"K:"
OPEN #2,8,0,"P:"
OPEN #3,12,0,"D:FILE"
OPEN #4,9,0,"D:DATA"
OPEN #5,13,0,"R:"
OPEN #6,6,0,"D:*.TXT"
CLOSE #a
GET #a,b
PUT #a,b
INPUT #a,b$
INPUT #a,b
PRINT #a,[stuff]
STATUS #a,b
XIO a,#b,c,d,e$
XIO 32,#1,0,0,"D:FILE,OLDFILE"
renames file
XIO 33,#1,0,0,"D:OLDFILE"
deletes file
XIO 34,#1,0,0,"D:GAMES"
creates a directory in
My- & Sparta-DOS
XIO 35,#1,0,0,"D:NEWFILE"
locks a file from
over-write and deletion
XIO 36,#1,0,0,"D:NEWFILE"
UNlocks a locked file
XIO 40,#1,4,0,"D:PROG.OBJ"
loads and runs a binary file
(like "L" in Atari and MyDOS)
XIO 40,#1,5,0,"D:PROG.OBJ"
loads a binary file
(like "L" in Atari and MyDOS with the "/N" option)
XIO 41,#1,0,0,"D:GAMES"
changes default directory that
drive/subdirectory (all calls to "D:" will now occur within
that drive/directory)
XIO 254,#1,0,0,"D2:"
FORMAT a disk (in Atari DOS 2.5,
this is format 'enhanced', to format 'single' density, use
XIO 253) (in MyDOS, this is format, but not 'enhanced', use:
XIO 253,#[channel],1,0,"D[drive]:"
for formatting a
drive in enhanced mode).
Note: Someone please give more details or corrections here! Thanks!
If you have double-density Atari disks, you can use the program "Util" on the IBM which can read double-density Atari disks. Please see the Atari 8-bit FAQ for more details.
If you have an Atari 1050 disk drive, you can use the program MULE to copy files, one file at a time, 20k chunks at a time, from the Atari to the IBM. You first must format a 180k disk on your IBM, the run MULE on your Atari to get a file onto the MULE disk, then run MULE on the IBM to get the file onto the IBM. Tedious, isn't it? MULE wasn't meant to be a fully-functional program, just a demo to show that this was even possible.
If you're fortunate to have a Black Box interface on your Atari, you can get an external IBM drive and the Black Box's add-on, the Floppy-Board and simply copy files from your Atari disks or hard drive(s) onto IBM disks via the floppy board, then load them up on your IBM.
You can use SIO2PC, which is a program for IBM's which turns your IBM into a set of Atari disk drives. You need the SIO2PC cable (which you can purchase, assembled or unassembled, or buy parts and build it yourself) and the SIO2PC software (available at UMICH). Connect your IBM to your Atari, load SIO2PC, and then run the program FILE2PC on the Atari to transfer files to the IBM's hard drive. Or instead create a disk image within SIO2PC and copy files from one disk (a real Atari floppy) to another (the SIO2PC image) with the Atari or MyDOS "C"opy command. If you want to extract files out of the SIO2PC disk image file and store them on your IBM's hard drive or floppies as single files, either again use FILE2PC or use S2PC, an IBM program which can extract files from or add files to MyDOS-compatible SIO2PC disk images!
You can use two modems (one on your PC and one on your Atari) to download files from your Atari 8-bit.
If you don't necessarily want files that you already have on your Atari 8-bit, you can download files from the huge collection available at FTP sites and Atari 8-bit supporting bulletin boards and save them onto your IBM.
If you have only one modem, so you can't connect both your Atari 8-bit and your IBM together via modems, you can do it via null-modem, OR you can upload files from your Atari to some bulletin board or account you have access to, and then connect the modem to your IBM and download the files.
(AND NOTE: DiskComm. doesn't like SIO2PC a lot of the time anyway!)
Yes! There's an IBM program out called "DCM2DSK". (Why "DSK" and not "ATR"? To keep people from getting confused with the ATR-8000(?))
There's also C source to a very similar program called "DCMTOATR" which works on PC's (a PC executable version comes in the archive) and Unix and probably any other system with a good C compiler.
AGAIN, PLEASE CHECK OUT THESE OTHER FILES: