Jump to content
IGNORED

Could someone give me a jump start about program loading / memory maps?


Recommended Posts

Hi altogether!

 

A quick introduction, as this is my first post here: I never had any Atari Computer, I always was on the Commodore train. Learnt programming, incl assembly on the C64 and then moved to Amiga.

 

However, now I am playing with my FPGAArcade/Replay board, and I'd like to taste the differences, see one or two games which were said to be better on Atari ect.. Also I enjoy digging in the past a bit.

 

 

My problem:

There is a 800XL FPGA core for my board, however it is rather incomplete. Seems that the autor is more focussed on other boards. The core is currently missing any load functionality from sdcard.

I can, however, map any file into any memory location at bootup. So this is my current challenge: Find programs in a suitable format and find out how to start them.

 

I already read that things are quite different from the commodore world. You had to push some button on the real thing to disable basic. And you had a fancy disk menu instead of directory listings...

 

First question is about a suitable format. I do not expect disk games to run which load individual levels. I would expect to find single program files (.prg?) which could origin from disks or tapes. Or, probably even easier, cadridge dumps. (.com?)

 

My question:

I my expectation correct? I could just map .prg files to a fixed, always-the same memory offset and type "run"? Or some other command specifying the offset? (like sys on the c64)

Where do I find documentation about this. I took a brief look into some programming literature, but this is not described too obviously,

 

Link to comment
Share on other sites

16k or 8k cartridge rom images might be the easiest thing to start with. A 16k cart image will map to $8000. The 8k images usually map to $A000. When you boot the machine it will automatically check these locations for a game and start it. The executable .xex and .com files can be multi-segmented and would normally be loaded from disk with DOS or some loader program.

Link to comment
Share on other sites

Hi altogether!

 

A quick introduction, as this is my first post here: I never had any Atari Computer, I always was on the Commodore train. Learnt programming, incl assembly on the C64 and then moved to Amiga.

 

However, now I am playing with my FPGAArcade/Replay board, and I'd like to taste the differences, see one or two games which were said to be better on Atari ect.. Also I enjoy digging in the past a bit.

 

 

My problem:

There is a 800XL FPGA core for my board, however it is rather incomplete. Seems that the autor is more focussed on other boards. The core is currently missing any load functionality from sdcard.

I can, however, map any file into any memory location at bootup. So this is my current challenge: Find programs in a suitable format and find out how to start them.

 

I already read that things are quite different from the commodore world. You had to push some button on the real thing to disable basic. And you had a fancy disk menu instead of directory listings...

 

First question is about a suitable format. I do not expect disk games to run which load individual levels. I would expect to find single program files (.prg?) which could origin from disks or tapes. Or, probably even easier, cadridge dumps. (.com?)

 

My question:

I my expectation correct? I could just map .prg files to a fixed, always-the same memory offset and type "run"? Or some other command specifying the offset? (like sys on the c64)

Where do I find documentation about this. I took a brief look into some programming literature, but this is not described too obviously,

 

 

There were basically two kinds of disks, ones that you'd use with DOS and load things from the DOS menu. You can list their directories with DOS.

 

The other were boot disks. These were often not compatible with DOS (ie, you couldn't read their directory in DOS). You'd put these in and power on, holding down OPTION on XL and XE models only to disable basic. Sometimes these were DOS disks and had a program named AUTORUN.SYS, which is a regular binary that gets automatically loaded when the disk is booted.

 

Atari uses the 8.3 format filenames that MSDOS used to use, however the 3-letter extension held no special meaning on Atari. Common extensions for executables were .EXE, .COM .OBJ, .BIN .SYS These should be the easiest to map into memory, I believe they contain the mem address they needed to be loaded into in their header. ,ATR, .XFD, .DCM and .XEX are whole disk images

Link to comment
Share on other sites

Thanks a lot!

 

You guys are really helpful. Especially the video tought me the big picture about Atari program loading.

However, I did not manage to start a program yet. But I'll figure out. Currently I am lacking more information on the FPGA/core config side, I guess.

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...