Jump to content
IGNORED

Atari Games in .com Format


The Galaxer

Recommended Posts

>And what is the difference between com and exe ATARI files?

There is none except the naming. Atari did not actually define a fixed standard for the name or file extension.
The concept is called composite file and is consists of one or more segments in one file that are loaded to individual addresses. You can learn the details from the video below.

Sometimes the distinction between COM and EXE suffix was used to express that the COM file only has load segments but no INIT/RUN segments (i.e. is does not start by itself when loaded), but you should forget about that. Also "OBJ" was used for the same purpose on the Atari. And as mentioned above, "XEX" was introduced when emulators came up because all "COM", "EXE" and "OBJ" were in use by DOS/Windows and you want a distinctive file extension so double-clicking a file runs the emulator and nothing else.

 

 

 

 

  • Like 1
Link to comment
Share on other sites

Thank you, Friends!

 

Really this theme can be someway learning lesson, because I found speaking of atari files in many themes like this.

 

Now I see that

1. The structure of Atari file determined mostly by Atari OS CIO routines and can't be changed without changing OS itself.

2. We remember that there are non CIO access to files too.

3. File structure is very versatile and Atari file can be as single-segmented as well as multy-segmented.

4. There are no naming differenses in extensions of executables at all.

5. OBJ files as a result of compiling or assembly has a structure defined by programmer (it may be data files FE).

6. COM,EXE,XEX files has structure containing segments for filling INITADD and RUNADD Atari OS HW vectors for starting initialization code and starting main executable code of program itself.

 

As far as it's concerned SDX I remember that there are some differences. But what they are?

Link to comment
Share on other sites

1. There's not really any file structure determined by CIO - CIO deals with raw data provided by device handlers, the only thing it builds on is allowing record oriented I/O deliniated by RETURN characters or variable sizes of data to be input or output. The rest is up to the application, language, DOS or program. Executable files are a Dos concept, (sadly) there's no actual support for them within the OS itself other than the lower level disk access routines.

 

3. Segments are limited only by whatever max. file size is supported but the reality is they're generally sequentially accessed only and the filing system in use only remembers what Init/Run addresses are in effect and details for the current segment being loaded or next one pending.

 

6. No hardware vectors in such files - the Dos or loader has provision for the proper running of binary/executables.

 

SDX and some other Doses, especially command-line ones - like MS-Dos simply entering a filename will cause the Dos to attempt to execute a file with certain extensions, usually batch or command processors.

Edited by Rybags
Link to comment
Share on other sites

Hi Rybags, :)

 

It was too hard early morning for me.

I even couldn't remember that CIO only relay commands and data to DOS. My fault.

 

Please clearize what do you mean when said that No hardware vectors in such files.

I think that you mean that files contain some data for loading into HW Run/Init vectors isn't it?

Link to comment
Share on other sites

  • 4 weeks later...

Atari .exe files used to set my anti-virus off, and when it was set to look into zip/archive files it deleted and shredded my entire Atari archives.... when renamed xex it passed the idividual files not in the archive by.... trust me it sucked big time...

  • Like 1
Link to comment
Share on other sites

Please clearize what do you mean when said that No hardware vectors in such files.

I think that you mean that files contain some data for loading into HW Run/Init vectors isn't it?

There are no hardware vectors as HW memory area are in $d000-$d7ff only and RUN/Init vectors are stored at $2e0 and $2e2. The RUN/Init addresses have no impact on HW it's just software thing and it's used by ATARI binary file format.

Edited by MaPa
Link to comment
Share on other sites

  • 1 month later...

>And what is the difference between com and exe ATARI files?

There is none except the naming. Atari did not actually define a fixed standard for the name or file extension.

The concept is called composite file and is consists of one or more segments in one file that are loaded to individual addresses. You can learn the details from the video below.

Sometimes the distinction between COM and EXE suffix was used to express that the COM file only has load segments but no INIT/RUN segments (i.e. is does not start by itself when loaded), but you should forget about that. Also "OBJ" was used for the same purpose on the Atari.

 

Dunno where these ideas came from but this is the first time I've ever heard of them. Except that there was no real defined standard for filenames or extensions. There were, however, common practices.

 

The ".OBJ" extension was used to refer to any loadable binary file. There was never any distinction made between multi-segment or single-segment, or having a RUN address specified or not. Maybe there were some individuals who made such distinctions but it was never a widespread thing as far as I've ever heard.

 

At some point, people started using ".EXE" in the same way as ".OBJ". I recall this was mainly an attempt to be more like how they did it on other computer systems. There was no distinction here other than personal preference, and in fact I remember one guy at my user group being proud of this program he'd written that did nothing more than rename all the ".OBJ" files on your disks to use ".EXE" instead.

The use of the ".COM" extension on the Atari 8-bit computers was something you started seeing with command-line shells like OSS DOS-XL or SPARTADOS. For extrinsic shell commands (i.e. requiring a program loaded from disk, rather than being built into the shell) they used the ".COM" extension. This made it easy to distinguish which files on your disk were used by DOS.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...