PacMan Posted February 24, 2006 Share Posted February 24, 2006 (edited) Hi all, A few months back I started to think and sketch on a RAM based development system for my A7800. I wanted to create something that would be as easy to use as most modern development tools available for embedded development. The result became something I call the RAMCart and is described on my webpage www.x-game.se under projects. The last couple of weeks though, I have found it increasingly difficult to master up the energy to get this project finnished, or even to update the web with the latest developments I guess what I need is a kick in the rear to either just drop it and throw the garbage in the bin or get the project going again and conclude the last stages. Thus, the reason for my post. If anyone has the energy to look into my pages and maybe throw some ideas, critique, rack down on the design or just cheer me on i would appreciate it. Any comments are welcome. The current status is that I have the CPLD, FLASH and SRAM in place and the logic in the CPLD seem to do what it is supposed to do. The USB controller is soldered in but not tested yet. I have written code to test the separate blocks and have done some preliminary tests with a HLL debugger called NoIce. OK guys (and girls) questions anyone ? /P Edited February 24, 2006 by PacMan Quote Link to comment Share on other sites More sharing options...
gambler172 Posted February 26, 2006 Share Posted February 26, 2006 Hi Pac Man when will this development system be available? greetings Gambler172 Quote Link to comment Share on other sites More sharing options...
jaybird3rd Posted February 26, 2006 Share Posted February 26, 2006 (edited) This project somehow escaped my attention until now, but it definitely looks interesting! I've been retrofitting BallBlazer cartridges with SRAMs and using Eckhard Stolberg's DevOS, which has worked very well for me, but it limits me to 32K of onboard RAM. Having more memory is a definite plus, as is getting away from the parallel interface for uploading through the joystick port. I would definitely encourage you to pursue it further; perhaps you simply need to set it aside for a while and take a break. The 7800 homebrewing "scene" is still pretty small and it may sometimes seem that there's no market, but as tools like yours become available, I think the 7800 will become a less-intimidating platform for game development and will get a lot of support. EDIT: Here is a link to PacMan's site for anyone who wants to look it over; the RAMCart is in the "Projects" area. Edited February 26, 2006 by jaybird3rd Quote Link to comment Share on other sites More sharing options...
supercat Posted February 26, 2006 Share Posted February 26, 2006 A few months back I started to think and sketch on a RAM based development system for my A7800. I wanted to create something that would be as easy to use as most modern development tools available for embedded development.1023616[/snapback] I use a Cuttle Cart 2 for development and find it's really nice. Would your device allow the cartridge to be accessed while connected to a PC? That would be really nice too. Quote Link to comment Share on other sites More sharing options...
PacMan Posted February 26, 2006 Author Share Posted February 26, 2006 Just to give you all some input on the concept of the RAMCart. It is not something that tries to replace the Cuttle Cart. It's more of an complement to it. The RAMCart only has RAM for downloading and debugging code. The idea with the RAM is that it is easy to download code and manipulating the content of the RAM. This makes it easy to insert break points, update the code on the fly etc. The USB interface makes it possible to do all of this extremly fast. The idea is to have an A7800 (or generic Atari) platform on the host computer (Windows/Unix/Apple) where you do all development, building and debug under the same framework. The framework could also provide templates for often required code, graphic editors for creating/editing sprites and a lot of other stuff to help in development. My initial idea is to write the framework in Java to be able to be platform independant but I am open to any ideas that you may have. /PacMan Quote Link to comment Share on other sites More sharing options...
supercat Posted February 27, 2006 Share Posted February 27, 2006 Just to give you all some input on the concept of the RAMCart. It is not something that tries to replace the Cuttle Cart. It's more of an complement to it. The RAMCart only has RAM for downloading and debugging code. The idea with the RAM is that it is easy to download code and manipulating the content of the RAM. This makes it easy to insert break points, update the code on the fly etc. The USB interface makes it possible to do all of this extremly fast.1024972[/snapback] Thanks for the explanation. Can the 7800's cartridge port be used to suspend processor execution, or is the Halt pin an output only? I can certainly see how a debugging cart could be useful, though finding the right balance of features and price could be tricky. Quote Link to comment Share on other sites More sharing options...
+Mitch Posted February 27, 2006 Share Posted February 27, 2006 So you are basically building an updated version of Atari's old 7800 dev RAM card? Mitch Quote Link to comment Share on other sites More sharing options...
PacMan Posted February 27, 2006 Author Share Posted February 27, 2006 Basically yes, Although I am not to familiar with the original dev.kit this is probably similar in basic functionality. /PacMan Quote Link to comment Share on other sites More sharing options...
EricBall Posted February 27, 2006 Share Posted February 27, 2006 Can the 7800's cartridge port be used to suspend processor execution, or is the Halt pin an output only?1025023[/snapback] The HALT pin is an output from MARIA so the cart can determine when MARIA is doing DMA accesses. And although I haven't used it, doesn't the CC2 have a serial port to directly download code into RAM? When I was developing SpaceWar! 7800 I used MESS for simple debugging, then copied it over to an MMC for testing on the CC2. Quote Link to comment Share on other sites More sharing options...
+Mitch Posted February 27, 2006 Share Posted February 27, 2006 Basically yes, Although I am not to familiar with the original dev.kit this is probably similar in basic functionality. /PacMan 1025228[/snapback] Here is my page about the original 7800 dev kit. Mitch Quote Link to comment Share on other sites More sharing options...
PacMan Posted February 28, 2006 Author Share Posted February 28, 2006 And although I haven't used it, doesn't the CC2 have a serial port to directly download code into RAM? When I was developing SpaceWar! 7800 I used MESS for simple debugging, then copied it over to an MMC for testing on the CC2. 1025351[/snapback] You are absolutely correct, the CC2 has a 115200 baud serial port which can be used for downloading and running software. I guess that this is how many developers test their code, this is certainly how I have done with my test shoots. There is however no way (yet !?) that you can insert, monitor and manage break points, look at register content, single step your code etc. through that interface. The RAMCart is specifically designed for that purpose. Having said that I am almost sure that the CC2 could be programmed to do that as well if someone wanted to. /P Quote Link to comment Share on other sites More sharing options...
PacMan Posted March 2, 2006 Author Share Posted March 2, 2006 Got the USB port to work tonight. The VSP driver nicely connects to the module and I was able to stream data from the PC virtual serial port down to the A7800. Seems I will be able to download a lot of data very quickly. More to come. /P Quote Link to comment Share on other sites More sharing options...
Flipper Posted March 2, 2006 Share Posted March 2, 2006 Got the USB port to work tonight. The VSP driver nicely connects to the module and I was able to stream data from the PC virtual serial port down to the A7800. Seems I will be able to download a lot of data very quickly. More to come. /P 1027129[/snapback] Impressive! BTW, how are you testing your code in the flash? It looks like you've got a 100% surface mount design, and I can't see any way to remove the flash to a programmer without soldering and desoldering. Also, any consideration to bringing the HALT line into the memory bank controller? That would allow the programmer to have the video chip see different memory than the CPU. I'm sure someone could come up with some use for that! Quote Link to comment Share on other sites More sharing options...
philipj Posted March 2, 2006 Share Posted March 2, 2006 (edited) Basically yes, Although I am not to familiar with the original dev.kit this is probably similar in basic functionality. /PacMan 1025228[/snapback] Here is my page about the original 7800 dev kit. Mitch 1025430[/snapback] Has anyone ever successfully assembled a RAM card...? and if so, what was the results of it? Edited March 2, 2006 by philipj Quote Link to comment Share on other sites More sharing options...
supercat Posted March 2, 2006 Share Posted March 2, 2006 BTW, how are you testing your code in the flash? It looks like you've got a 100% surface mount design, and I can't see any way to remove the flash to a programmer without soldering and desoldering.1027135[/snapback] In-circuit programming of flash devices is pretty common. Quote Link to comment Share on other sites More sharing options...
PacMan Posted March 3, 2006 Author Share Posted March 3, 2006 (edited) Maybe I should have mentioned that I have created a special version of DevOS which can download and FLASH the monitor FLASH device on the RAMCart. This special DevOS also makes use of the X-Board which has 128KRAM, much easier to work with rather than having to squeeze everyting into 4K, But that's just me, I'm lazy..... /P Edited March 3, 2006 by PacMan Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted March 3, 2006 Share Posted March 3, 2006 You are absolutely correct, the CC2 has a 115200 baud serial port which can be used for downloading and running software. I guess that this is how many developers test their code, this is certainly how I have done with my test shoots. There is however no way (yet !?) that you can insert, monitor and manage break points, look at register content, single step your code etc. through that interface.Well, there is a way, but it's not easy. I wrote my own monitor debugger (after successfully porting the Apple II monitor and deciding I didn't like it!) that works through the right joystick port at 2400 baud. And it had to be assembled into the code I was working on, especially because I had to turn off the #@%@#! Maria when using the joystick serial port. (I had a conditional assembly that would take it out when not needed.) It was enough to let me properly debug the chain-detect algorithm in Tubes. I'm pretty sure that at this time there is no banker file which will leave the UART mapped into the 7800 address space, and it would have to be done on a case-by-case basis with each banking scheme anyhow. Quote Link to comment Share on other sites More sharing options...
cschell Posted March 9, 2006 Share Posted March 9, 2006 I'm pretty sure that at this time there is no banker file which will leave the UART mapped into the 7800 address space, and it would have to be done on a case-by-case basis with each banking scheme anyhow. A while back I posted a 78scser.bnk or something along those lines which is a supercart bankswitching file with the serial port active. It's in the CC2 discussion thread. It was made by request, but I don't think anyone has actually used it though. Chad Quote Link to comment Share on other sites More sharing options...
+Mitch Posted March 9, 2006 Share Posted March 9, 2006 Here it is again in case anyone doesn't like searching. Mitch 78scser.zip Quote Link to comment Share on other sites More sharing options...
PacMan Posted March 10, 2006 Author Share Posted March 10, 2006 Finally got a complete system together and operating. Currently I am using the NoIce debugger (NoIce) to download code and debug with. So far most operations seem to work although NoIce seem to freeze up completely from time to time. Will try to post some pictures next time I get around to play with the system. /P Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.