Search the Community
Showing results for tags 'Developer'.
-
The Debug Port If you've looked at the 7800GD, you'll have spotted the white 3 pin port on the side and wondered what that little plug is for, well it's a debug port. Or to be more precise it's a serial port which connects to the processor on the 7800GD and lets you upload and run code directly from your PC. The source code and Windows command line executable for the client are available on the GitHub repository 7800GD-Debug. Anybody wanting versions for Linux or Mac should be able to easily port to their system. As well as the command line executable you will also need a physical serial connection. You can use any serial port or adapter you like which will interface with a 3.3V LVTTL serial connection. The standard voltage for RS232 is normally +/-12V, so be aware if you are using an RS232 connection you will need something to convert the voltage to 3.3V such as the MAX13223E, but this is out of the scope of this post. To connect your serial device you will need to use the following connections on the debug port: The RX and TX connections are from the perspective of the 7800GD cartridge, so RX is data being received by the cart and likewise TX is data being transmitted by the cart. These need to be connected correctly to RX and TX of the serial adapter. The Serial Adapter While you can use whatever means you like to connect up your computer to the 7800GD, I'll detail a simple method using easily available parts which just require a bit of soldering. Things you'll need -- A USB to TTL FT232RL Serial Adapter (eBay example) A JST PH 2.0mm 3pin connector with tails (eBay example) Double check the wiring on JST connector you have / make. For the cable listed above RX, which is nearest the top of the cartridge, is yellow, GND is black and TX is red. With these wire colours, connect yellow to TX on the FT232RL module, red to RX and black to GND. You will also need to make sure the jumper is set for 3.3V! While the cartridge has over-voltage protection on this port to stop accidental damage, prolonged use of higher voltage signals is highly likely to damage your cartridge! In the picture below I have de-soldered the headers which were installed on the module and wired in the cable and jumper permanently. You may prefer to add a connector to your JST cable and use the headers provided, but my preference was a fixed single purpose device for 7800GD debug use. Once you have something wired up similar to the above you will be able to attach it to your PC and connect to the 7800GD via the USB serial connection. You'll just need to find out which COM port has been assigned to the adapter module and pass this to 7800cmd. An example command line to run an A78 file is -- 7800cmd -com COM4 -run mygame.a78 This will upload the A78 file using a 500kbit serial connection (so even large images are quick enough) and run the ROM. Using the 7800header tool you can set the features required by your program, including the mapper type, additional hardware requried (HSC, Mega7800, POKEY...). These feature requests will be passed to the 7800GD when the A78 is uploaded.
-
Overview The 7800GD and Mega7800 add some features to the 7800 which can be used by homebrew developers to add new features to their games. This post will go through the new features added and how you can make use of them in your native 7800 projects. Support for these features will also be added into 7800basic. Mega7800 The Mega7800 allows any MegaDrive / Genesis or Master System controller to be used with the 7800. This is largely transparent to the 7800 and will just appear as a normal 7800 controller, however it is possible to detect the presence of the Mega7800 and read all the buttons from the attached controller and use these in your games. To make sure the 7800GD doesn't also use the extended buttons your game uses, make sure to set the mega78001/2 flag on the ROM with the 7800header tool. This changes the way the 7800GD breaks into the game with the controller, allowing the game to have full access to the extended buttons but still allowing the 7800GD to exit to game selection. Sample code for using the Mega7800 directly in your ROM is available on GitHub at 7800GD-Homebrew. Support is being added to 7800basic as well. To add support for the Mega7800 you only need to include mega7800.s in your code, define space for JOYMODE, JOYDIR, JOYBTN0, JOYBTN1 and call Mega7800ReadControllers once per frame. The presence of the Mega7800 can then be detected through JOYMODE and the direction and button states read through JOYDIR and JOYBTN0/1. This also reads the state of standard controllers attached, so this can be a direct drop-in replacement for existing controller code. Audio Streaming To support the audio for Rikki and Vikki a streamed audio system is used. This uses stereo ADPCM encoded audio files stored in a folder alongside the game ROM (with the same name, but no extension) which are decoded and played by the cartridge with no overhead to the game. To allow homebrew developers to use this audio feature independently of the Souper mapper, I have added a streamed audio device which maps to $420 in memory, this can be added to your ROM with the adpcm@420 flag from the 7800header tool. You can encode any WAV file into a stream suitable for use with the 7800GD by using the 7800GDAudioEncode tool for which the source code and binary can be found on GitHub at 7800GD-AudioEncode. Sample code for using the audio streaming directly in your ROM is available on GitHub at 7800GD-Homebrew. Support is being added to 7800basic as well. To add support for audio streaming you just need to include AudioStream.s in your code, call AudioStreamReset to initialise and then the appropriate AudioStreamXXX functions as you need them. Audio files need to be named 0-31.bup and placed in a folder with the same name and in the same directory as the A78 file, the file corresponding to the number passed to AudioStreamPlayTrack will be played when called.
-
The image I've uploaded is preloaded in Assembly Language Storage mode(>7000=>A55A) with LINE BY LINE ASSEMBLER and the LINES demonstration program on PAGE 1(use NEW,OLD,LINES from MINI MEMORY option 2 RUN), (see MINI MEMORY pamphlet page 74). Using SAVE MINIMEM from TI BASIC will force the current PAGE's (>7000 to >5AA5) TI BASIC Files mode(see MINI MEMORY pamphlet page 73). Each RAM PAGE can have it's own mode. Using the SAVE option after the TITLE SCREEN will save the current page to the SD card's image file. I believe the main difference between the two modes is that in TI BASIC Files mode, you have no REF/DEF table. I tend to use absolute addresses anyway and keep tight control over all program/data sections/pages, loading from tape or by using EMU and a HEX EDITOR on the SD cards image file, rather than by using REFs and DEFs. But once again, each PAGE can have it's own mode. One thing of note, might be, that when you LOAD, RELOCATABLE TAGGED OBJECT CODE from MINI MEMORY option 1, the loading destination is controlled by the following addresses: >701C first free address in MEDIUM MEMORY (>7000-7FFF) >701E last free address in MEDIUM MEMORY >7022 first free address in HIGH MEMORY (>A000-FFE0) >7024 last free address in HIGH MEMORY >7026 first free address in LOW MEMORY (>2000,3FFF) >7028 first free address in LOW MEMORY The single REF/DEF table goes downward from >7FFF. When the 32K memory pointers are not >0000, TAGGED OBJECT CODE will try to load in 32K, rather than MEDIUM MEMORY! So Best to ZERO these manually, So as to force code to load into MINI MEMORY. From MINI MEMORY use option 3 RE-INITIALIZE to clear/reset MEDIUM MEMORY before starting your project. Be aware that this will only RE-INITIALIZE the current PAGE! ROM pages are switched by writing to: 6000=page 1 6002=page 2 6004=page 3 RAM pages are switched by writing to: 6800=page 1 6802=page 2 6804=page 3 Page switching can be done from EASY BUG or by way of CALL LINK combined with a small assembly routine, either copied to all pages or stored in an non-paged RAM address range. So far I'm using this exclusively to run machine code, and to store data. Expecting the application(HOME AUTOMATION CONTROLLER) to grow as it is developed! But I'm certain that there are other uses as well. Alex. 256k Banked Minimem.zip
- 42 replies
-
- 9
-
- mini memory
- paging
-
(and 2 more)
Tagged with:
-
VecMulti SD Card Flash Developer MultiCart 2017 for Vectrex / 光速船 / Kousokusen Yes, accepting offers outside of eBay before the listing closes. No one wants a VecMulti, right? $500 / best offer / Bestes Angebot / Meilleure offre / Mejor oferta / Bästa erbjudande / Paras tarjous / Melhor oferta / Лучшее предложение / Лучшее предложение / أفضل عرض / Eskaintza onena / Najbolja ponuda / 最高の提案 / Beste tilbudet / Beste aanbod / Bedste tilbud / Besta boð / Migliore offerta / An tairiscint is fearr / An tairgse as fheàrr / Y cynnig gorau / بهترین پیشنهاد / Καλύτερη προσφορά / Pinakamagandang Alok / सबसे अच्छा प्रस्ताव / Millor oferta / Parim pakkumine / Najlepsza oferta. eBay Listing: https://www.ebay.com/itm/VecMulti-SD-Card-Flash-Developer-MultiCart-2017-for-Vectrex-Kousokusen/254067855097 #Vectrex #MultiCart #SDCard #Flash #Loadable #Menu #Developer
-
Specifically the pcbs this dude used in this video.
- 7 replies
-
- Atari
- Programming
-
(and 5 more)
Tagged with:
-
I bought this as dead, as the owner said it didn't power on. Usually means that they just didn't have a cart to test it with, so I took a gamble. I was right, but it's come with a bit more(/less?) than I bargained for. Is there anything particular that can be done with this? Is this worth something to someone? Please comment with any insight, as this is one of my odder finds.
-
Title pretty much says it all. I wanted to devote a thread for the engineers and developers who made our classic consoles and computers possible. Just off the top of my head: - Nutting Associates were behind the development of the Bally Astrocade. I think Ken Lill (kenzre) was part of this group? - Jay Miner designed the chips used in the Atari VCS and Atari 8-bit computer line. - Ed Averett and Roberto Lenarducci were behind the development of the Magnavox Odyssey 2. Ed convinced Magnavox/Philips to develop a new video game console using Intel chips. He also programmed many games for the O2. Roberto was the engineer behind the Odyssey 2's hardware, including the membrane keyboard and controllers. - Eric Bromley and Nuvatec were behind the development of the ColecoVision console. The ColecoVision uses Texas Instruments video and audio hardware. Please feel free to add other consoles/computers & who developed/engineered them, or add to what I already have up.