AtariAge Forums: 7800 Development - AtariAge Forums

Jump to content

  • (4 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

7800 Development

User is offline kamakazi Icon
Posted Fri Jul 25, 2008 8:10 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Hey guys!

I originally started this thread under another topic. It was suggested that I post it here. Here's what is going on:

1st, I'm in the process of learning the 7800 console. I'm not using any emulation...I'm using an actual Atari 520ST and a 7800 console connected to each other by way of printer port and cartridge port. I'm new to assembly and someone has already suggested an online book based on learning the language. The help I have gotten so far has been tremendous and very much welcomed and appreciated.

2nd, the person supporting me is sending me actual Atari documentation on programming the 7800...and what I learn I would like to start another thread to post what I've learned (with some secrets kept for myself LOL). I was trying to find any and all information I could find surrounding development for the 7800. If anyone out there including those that have already posted, find or know anything about programming the 7800, please pass on the information.

Thanx in advance for the information.
0

User is offline kamakazi Icon
Posted Fri Aug 1, 2008 10:29 AM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Ok...I got some interesting links to sites that are very interesting. Those wanting to learn the 2600/7800 might find these sites useful. Here are the links:

7800 Software Guide

2600 Programming Standards

7800 Programming Standards

7800 Development Kit Documentation

7800 Development Kit Schematics

7800 Keyboard Programming Guide

7800 BIOS Source Code

7800 to 5200 Adapter Schematics

7800 Maria Specs

Supercart Schematics (Hat Trick)

Supercart Schematics (Jinks)

Standard Cart Schematics

Atari's MadMac Assembler Documentation

Some new information that might please any 5200, 7800 and Atari 8-Bit computer programmers alike...it's by far the best book on assembly language for the 6502 I've ever came across. While I'm holding an actual copy in my hands...here's a link to the online version of this book.

Assembly Language Programming For The Atari Computers

I hope that someone finds this information useful. I'm also posting them here as my own way of easily finding this information should I ever need it...MSN hasn't been very reliable here lately and I'm afraid I'll lose the email with these links. Any other information I come across I will post it here.

It was also noted that there are some links broken in the above list. Is anyone else having problems with these links? If so, as soon as I find new links, I will fix the broken links. Sorry for the inconvenience.

7800 Software Guide link is fixed...but in smaller print (Sorry).

Until these links are fixed...please go here:

Whimsey Atari Docs

In here you will find documents on the 2600 and 7800.

This post has been edited by kamakazi: Mon Feb 15, 2010 3:19 PM

0

User is offline kamakazi Icon
Posted Fri Aug 1, 2008 1:10 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Here is some other links I found useful.

Sound Development Tool Guide

Also, this webpage link has actual Atari Development Software for creating 7800 programs on an actual Atari ST computer. There's also the DevCard ROM image here should you decide to create your own Development board.

7800 Development Information

Well...it's a start to 7800 Development. However, these websites that have information on the Devcard don't seem to have information on the cable that connected the ST to the kit. If anyone knows of this information, please send it along!

And since this seems to be starting out as a topic to find 7800 Development Stuff...here's a link to an on-line book to help those learn Assembly Language...I'll be using it as well.

Machine Language On-line Book

Hope this helps!

This post has been edited by kamakazi: Fri Aug 1, 2008 1:15 PM

0

User is offline kamakazi Icon
Posted Fri Aug 1, 2008 1:44 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
If you want to develope games for the 7800 on your current computer, a good place to start is to download the files from below. Also, you will need to have a good editor...I suggest Crimson Editor.

These can also be used to develope games for the 2600 (with the exception of the 7800 emulator). This is for those who want to create 7800 games on their current PC...I'm choosing a different route. I just feel that programs would be better achieved on an actual Atari computer and 7800 than through emulation.

Attached File(s)


0

User is online Mitch Icon
Posted Fri Aug 1, 2008 3:14 PM

    • 7800 Guy


  • Icon
  • River Patroller
  • PM this member
  • Posts: 4,999
  • Joined: 22-April 01
  • Location: Southern California, USA

View Postkamakazi, on Fri Aug 1, 2008 12:10 PM, said:

Well...it's a start to 7800 Development. However, these websites that have information on the Devcard don't seem to have information on the cable that connected the ST to the kit. If anyone knows of this information, please send it along!


If I remember it's just a straight through 25 pin cable. I'm not at home right now so I can't double check.

Mitch
0

User is offline kamakazi Icon
Posted Fri Aug 1, 2008 8:38 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri

Quote

If I remember it's just a straight through 25 pin cable. I'm not at home right now so I can't double check.

Mitch


If you would, let me know. Thanks, this is some information I was looking for. Wasn't sure if it might have been a special cable or not.

Also, I'm trying to locate this particular IC, C014795-12. It's U1 on the Devcard. Any help would be greatful. What would be even better would be finding this card intact...but what's the chances of that happening. Anyway, thanks Mitch for the info. Every little bit helps.
0

User is offline kamakazi Icon
Posted Fri Aug 1, 2008 9:31 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Further research turned up where I heard of that IC before...here's what it is...hope someone out there knows where I might could find one.

C014795 PIA (6520) HF4795 6/2/1983 Peripherial Interface Adaptor used in 8-bit computers (DLB)
0

User is online Mitch Icon
Posted Sat Aug 2, 2008 12:17 AM

    • 7800 Guy


  • Icon
  • River Patroller
  • PM this member
  • Posts: 4,999
  • Joined: 22-April 01
  • Location: Southern California, USA

View Postkamakazi, on Fri Aug 1, 2008 8:31 PM, said:

Further research turned up where I heard of that IC before...here's what it is...hope someone out there knows where I might could find one.

C014795 PIA (6520) HF4795 6/2/1983 Peripherial Interface Adaptor used in 8-bit computers (DLB)


http://www.best-elec...om/custom-i.htm

Mitch
0

User is offline DanBoris Icon
Posted Sat Aug 2, 2008 5:18 AM


  • Icon
  • Dragonstomper
  • PM this member
  • View blog
  • Posts: 883
  • Joined: 10-June 01
  • Location: New Jersey, USA
I just posted a description of the "hidden" 7800 control register in my Atari Age Blog.
0

User is offline kamakazi Icon
Posted Sat Aug 2, 2008 3:22 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
DAN!! Thank you for the efforts you've put into finding and posting the information on Atari! The 7800 Devcard Schematic you made out is what I'm attempting now so I can have a TRUE, full Atari game development environment. And thanks to Mitch for the link. I'm on my way to developing yet. Another question...where could I find one of those Devboards...or how would you suggest I make the devcard that will plug into the 7800's cartridge port?

Thanks!
0

User is online Sub(Function(:)) Icon
Posted Tue Aug 5, 2008 2:01 AM


  • Icon
  • Chopper Commander
  • PM this member
  • Posts: 109
  • Joined: 11-February 08
  • Location: Athens, Greece

View Postkamakazi, on Sun Aug 3, 2008 12:22 AM, said:

DAN!! Thank you for the efforts you've put into finding and posting the information on Atari! The 7800 Devcard Schematic you made out is what I'm attempting now so I can have a TRUE, full Atari game development environment. And thanks to Mitch for the link. I'm on my way to developing yet. Another question...where could I find one of those Devboards...or how would you suggest I make the devcard that will plug into the 7800's cartridge port?

Thanks!


Great work. It is good to have all this information listed in one place.

One small problem with the "7800 Development Kit Schematics" file. U9 is listed as PAL16L8ACN device.

This means it will need some programming for the devboard to be of any use. There is no HDL (Hardware Description Language) file listed, in any of the files I have seen yet. This would be needed to allow this device to be programmed correctly.


EDIT----
Ignore comment about Missing file for PAL, I have just found it on www.7800.org (listed in a link above)

This post has been edited by Sub(Function(:)): Tue Aug 5, 2008 2:32 AM

0

User is offline Vigo Icon
Posted Tue Aug 5, 2008 8:13 AM


  • Icon
  • Moonsweeper
  • PM this member
  • Posts: 369
  • Joined: 17-May 03
  • Location: Germany

View Postkamakazi, on Fri Aug 1, 2008 6:29 PM, said:



Very interesting, on page 1, in the table, there is the following entry:

"GCC1722 - Bus System: 680x0"

Meaning that apparently, a successor to the 7800 with an 16bit 68k CPU was planned.
0

User is offline Allan Icon
Posted Tue Aug 5, 2008 8:17 AM


  • Icon
  • River Patroller
  • PM this member
  • View blog
  • Posts: 3,526
  • Joined: 11-June 01
  • Location: Wallingford, CT

View PostVigo, on Tue Aug 5, 2008 10:13 AM, said:

View Postkamakazi, on Fri Aug 1, 2008 6:29 PM, said:



Very interesting, on page 1, in the table, there is the following entry:

"GCC1722 - Bus System: 680x0"

Meaning that apparently, a successor to the 7800 with an 16bit 68k CPU was planned.

Probably more to do with what it was developed on. Since Atari (not GCC) designed the 7800 development system around the Atari ST computers which used the 68000, it's probably what that refers to.

Although I could be completly wrong about that (which I think I am).

Allan

This post has been edited by Allan: Tue Aug 5, 2008 8:18 AM

0

User is offline Vigo Icon
Posted Tue Aug 5, 2008 9:42 AM


  • Icon
  • Moonsweeper
  • PM this member
  • Posts: 369
  • Joined: 17-May 03
  • Location: Germany

View PostAllan, on Tue Aug 5, 2008 4:17 PM, said:

View PostVigo, on Tue Aug 5, 2008 10:13 AM, said:

View Postkamakazi, on Fri Aug 1, 2008 6:29 PM, said:



Very interesting, on page 1, in the table, there is the following entry:

"GCC1722 - Bus System: 680x0"

Meaning that apparently, a successor to the 7800 with an 16bit 68k CPU was planned.

Probably more to do with what it was developed on. Since Atari (not GCC) designed the 7800 development system around the Atari ST computers which used the 68000, it's probably what that refers to.

Although I could be completly wrong about that (which I think I am).


Yes, because it refers to a Maria chip revision (GCC1722) especially made for the 68k bus system, as the table indicated. This revision is also housed in a larger chip package (PLCC64 instead of DIP48), which could indicate a 16 bit data bus.
0

User is offline kamakazi Icon
Posted Tue Aug 5, 2008 12:14 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
I just got my hands on the holy grail of 2600/7800 Development! I haven't had much time to go over the 7800 portion (most of it is already here anyway). But it's all written by Atari with no missing characters or print. There's even mentioning about a 7800 Monitor (???). Some pretty cool stuff!
0

User is offline DanBoris Icon
Posted Tue Aug 5, 2008 2:30 PM


  • Icon
  • Dragonstomper
  • PM this member
  • View blog
  • Posts: 883
  • Joined: 10-June 01
  • Location: New Jersey, USA

View PostVigo, on Tue Aug 5, 2008 10:42 AM, said:

Yes, because it refers to a Maria chip revision (GCC1722) especially made for the 68k bus system, as the table indicated. This revision is also housed in a larger chip package (PLCC64 instead of DIP48), which could indicate a 16 bit data bus.


GCC also did the Food Fight arcade game for Atari which was based on the 68000 processor. I wonder if they intended to use the 1722 version in arcade games?

Dan
0

User is offline Vigo Icon
Posted Wed Aug 6, 2008 5:52 AM


  • Icon
  • Moonsweeper
  • PM this member
  • Posts: 369
  • Joined: 17-May 03
  • Location: Germany

View PostDanBoris, on Tue Aug 5, 2008 10:30 PM, said:

View PostVigo, on Tue Aug 5, 2008 10:42 AM, said:

Yes, because it refers to a Maria chip revision (GCC1722) especially made for the 68k bus system, as the table indicated. This revision is also housed in a larger chip package (PLCC64 instead of DIP48), which could indicate a 16 bit data bus.


GCC also did the Food Fight arcade game for Atari which was based on the 68000 processor. I wonder if they intended to use the 1722 version in arcade games?

Dan


I doubt it, since at that time, Atari already had their own powerful 68000 arcade hardware (Marble Madness, Peter Pack Rat), and GCC alone probably could never have financed the development for further arcade games. But you are right, Food Fight is THE very first arcade game which uses an 68000 (1983), maybe that's why they perhaps thought it could be used in home video games so early? On the other hand, 680x0 is probably also a hint for the 68010. We'll probably never know fully what their plans were. But interesting nonetheless.
0

User is offline kamakazi Icon
Posted Thu Aug 7, 2008 9:42 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Ok guys...here's a short example program for something to do with the 7800. According to this paperwork, the code is supposed to be "Improved Memory Display". See what you guys come up with...I couldn't get it to do anything.

     JSR HEX4
     LDA #16
     STA $F0
ST   JSR NWLN
     JSR SHMEM
     JSR BLANK
     LDY #0
LP   LDA (SAVPC),Y
     BPL BR
     LDA #'.'
BR   JSR OUTALL
     INY
     CPY #8
     BNE LP
     DEC $F0
     BNE ST
     RTS


This is supposed to be code for something to do with showing how the "monitor" interacts with the 7800. Not quite sure what this is but, seems interesting. Hope it helps others.
0

User is offline kamakazi Icon
Posted Thu Aug 7, 2008 10:11 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Another interesting bit of information here for both 7800 and 2600 programmers alike. There is a way to set a "timer" in the 6532 chip. Here's what I've found...figured I'd share this much information to help get more games out from other homebrewers.

The PIA uses the same clock as the microprocessor so that one PIA cycle occurs for each machine cycle. The PIA can be set for one of four different "intervals", where each interval is some multiple of the clock (and therefore machine cycles). A value from 1 to 255 s loaded into the PIA which will be decremented by one at each interval. The timer can now be read by the microprocessor to determine elasped time for timing various software operations and keep the synchronized with the hardware (TIA chip).

The timer is set by writing a value (from 1 to 255) to the address of the desired interval setting according to the following table;

HEX ADDRESS INTERVAL MNEMONIC
$294 1 Clock TIM1T
$295 8 Clocks TIM8T
$296 64 Clocks TIM64T
$297 1,024 Clocks TIM1024T

For example, if the value of 100 were written to TIM64T ($296) the timer would decrement to 0 in 6400 clocks (64 clocks per interval x 100 intervals) which would also be 6400 microporcessor machine cycles.


Just shareing some more information for your favorite 2600/7800 console. Hope that this will spark some interest into creating more games for these consoles.
0

User is offline DanBoris Icon
Posted Fri Aug 8, 2008 10:55 AM


  • Icon
  • Dragonstomper
  • PM this member
  • View blog
  • Posts: 883
  • Joined: 10-June 01
  • Location: New Jersey, USA

View Postkamakazi, on Thu Aug 7, 2008 11:11 PM, said:

Another interesting bit of information here for both 7800 and 2600 programmers alike. There is a way to set a "timer" in the 6532 chip. Here's what I've found...figured I'd share this much information to help get more games out from other homebrewers.

The PIA uses the same clock as the microprocessor so that one PIA cycle occurs for each machine cycle. The PIA can be set for one of four different "intervals", where each interval is some multiple of the clock (and therefore machine cycles). A value from 1 to 255 s loaded into the PIA which will be decremented by one at each interval. The timer can now be read by the microprocessor to determine elasped time for timing various software operations and keep the synchronized with the hardware (TIA chip).

The timer is set by writing a value (from 1 to 255) to the address of the desired interval setting according to the following table;

HEX ADDRESS INTERVAL MNEMONIC
$294 1 Clock TIM1T
$295 8 Clocks TIM8T
$296 64 Clocks TIM64T
$297 1,024 Clocks TIM1024T

For example, if the value of 100 were written to TIM64T ($296) the timer would decrement to 0 in 6400 clocks (64 clocks per interval x 100 intervals) which would also be 6400 microporcessor machine cycles.


Just shareing some more information for your favorite 2600/7800 console. Hope that this will spark some interest into creating more games for these consoles.


The timer (which is actually in the 6532 RIOT chip) is really important in 2600 programming but is generally not used in the 7800 because the clock speed to the 6532 shifts from 1.79Mhz to 1.19 Mhz when you read/write to it which would throw off the timing of the clock.

Dan
0

User is offline DanBoris Icon
Posted Fri Aug 8, 2008 10:57 AM


  • Icon
  • Dragonstomper
  • PM this member
  • View blog
  • Posts: 883
  • Joined: 10-June 01
  • Location: New Jersey, USA

View Postkamakazi, on Thu Aug 7, 2008 11:42 PM, said:

Ok guys...here's a short example program for something to do with the 7800. According to this paperwork, the code is supposed to be "Improved Memory Display". See what you guys come up with...I couldn't get it to do anything.

     JSR HEX4
     LDA #16
     STA $F0
ST   JSR NWLN
     JSR SHMEM
     JSR BLANK
     LDY #0
LP   LDA (SAVPC),Y
     BPL BR
     LDA #'.'
BR   JSR OUTALL
     INY
     CPY #8
     BNE LP
     DEC $F0
     BNE ST
     RTS


This is supposed to be code for something to do with showing how the "monitor" interacts with the 7800. Not quite sure what this is but, seems interesting. Hope it helps others.


Hard to tell what it might do with out seeing the code for the subroutine call.s

Dan
0

User is offline kamakazi Icon
Posted Fri Aug 8, 2008 10:43 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Like I said, Dan, I'm just now learning Assembly without any books of any kind...I now know what JSR stands for thanks to your post...Jump-Sub-Routine...right? I was just trying to post some codes passed on to me in hopes that someone would help me understand assembly better.

On a final note, those codes I posted were for use in the 7800 Monitor...not 6502 Assembly Language which is why I kept getting errors upon a DASM compile. See...I learned something! Does anyone know if DASM has an include file (or library file) for 7800 support? Or, in simpler terms...is there a 7800 library that will work with DASM for learning purposes until I get this Atari gear up and running?
0

User is offline kamakazi Icon
Posted Fri Aug 15, 2008 1:48 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Found some documents on MADMAC...the developed macro assembler for Atari programmers. You guys might find this interesting as this is what Atari used to develop games for the 7800. You WILL need Adobe Reader to read this document.

MADMAC Documentation (ATARI)

More homework done.
0

User is offline Curt Vendel Icon
Posted Fri Aug 15, 2008 2:06 PM


  • Icon
  • River Patroller
  • PM this member
  • Posts: 3,630
  • Joined: 23-April 01
  • Location: Carmel, New York
Actually no...

When the Atari-GCC deal was looking to go south and GCC wasn't going to get royalty payment for the design, nor payment for generating and encrypting games (GCC had a deal with the Warner owned Atari that they would encrypt all games and be paid a royalty for each game, it would've turned into a VERY lucrative deal for them)

GCC started to look to other avenues for the MARIA design, one being a potential version on a 68000 bus. It was only in spec's and never actually developed.

This was from directly talking with Doug Macrae and Steve Golson from GCC when I had everyone together for the 20th anniversary 7800 reunion up on Vintage Computer Fest East at Sun Computer Systems.



Curt


View PostVigo, on Tue Aug 5, 2008 9:13 AM, said:

View Postkamakazi, on Fri Aug 1, 2008 6:29 PM, said:



Very interesting, on page 1, in the table, there is the following entry:

"GCC1722 - Bus System: 680x0"

Meaning that apparently, a successor to the 7800 with an 16bit 68k CPU was planned.

0

User is offline kamakazi Icon
Posted Mon Aug 18, 2008 8:43 PM


  • Icon
  • Chopper Commander
  • PM this member
  • View gallery
  • Posts: 192
  • Joined: 25-March 08
  • Location: Moberly, Missouri
Ok guys. I need some ideas on what I'm doing. I just received a book called Assembly Language Programming for the Atari Computers. It's been by far the best source on assembly language for the 6502 I've found yet! However...it's based on the 8-bit computer and 5200 consoles that contained the ANTIC, GTIA (CTIA on some) and POKEY. While I am aware that games produced for the 7800 can in fact have the POKEY chip placed in them to offer better sounds, my main concern is the graphics chip MARIA. Is there any documentation that will teach me how to display graphics on the screen with the MARIA chip? Also, does the 7800 have ATASCII imbedded in any of its chipsets?

I know that there was someone on here that posted somewhere they actually used an ST with MADMAC for programming the 7800. If they are reading this or anyone with the same setup, please help. All I'm trying to do is get the 7800 to say "HELLO" using only Assembly Code. I currently have some code written, but the ST doesn't have a CD burner, nor does today's computers come with a floppy drive...so I can share the code I'm using. Also, the book is using code written on the ATARI ASSEMBLER/EDITOR CARTRIDGE.

My other questions are:

Those using the ST and MADMAC...how did you connect your ST to the 7800 for testing/debugging code?
Where can I find a copy of MADMAC?
My ST currently has only the 360k floppy drive...any ideas on where to find a hard drive?

I was also given a copy of Epyx's Art & Film Director program (new still in factory shrinkwrap). If any sprites or artwork are done in this program, can the 7800 reproduce them? Sorry guys, I'm NOT going to give away the secret of where I got this stuff.

Thanks in advance!

This post has been edited by kamakazi: Mon Aug 18, 2008 8:50 PM

0

  • (4 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users