Jump to content
IGNORED

F18A


matthew180

Recommended Posts

When I added the GPU to the F18A, that provided a convenient way to expose the SPI interface. Here is a little more info than you probably want to know:

 

When an FPGA (SRAM-based FPGAs anyway) powers up it is empty. It has to load its "configuration", called a bit-stream, from somewhere and is usually a serial or parallel flash device. The F18A uses a serial flash. Once the FPGA has loaded its bit-stream and comes online, the SPI pins that were used to load its bit-stream are available for general purpose use, or to access the memory for other purposes, i.e. external storage, bit-stream updates, etc.

 

Since modern flash-based memories are "intelligent", meaning you have to issue in-band commands to work with them, you really need a computer or micro-controller to easily work with them. With the inclusion of the GPU, it became relatively easy to add the SPI circuit and memory map a port to the SPI flash. For instructions and assembler support, I repurposed the LDCR and STCR (load and store communications register) as read/write instructions to the SPI flash since the F18A does not have the communications register.

 

Thus, with the proper programming (which I have not written yet), the F18A could update the SPI flash, and thus its own bit-stream. There is some danger though, because a flash device has to be erased before it can be written to, if something goes wrong during the update procedure (power loss, computer locks up, etc.) then the F18A would be brain dead and would require a JTAG interface update.

 

The other problem is the size of the bit-stream file, which is 200K to 400K, and how to get it onto the 99/4A (and not to mention the CV or other systems like MSX machines).

Edited by matthew180
Link to comment
Share on other sites

  • 3 weeks later...

Any news on emulator support for the F18A? I'd love to make a full-fledged platform game for this target as I've always felt that's what the TI was missing most. I'm thinking of porting my work-in-progress Alex Kidd clone to this, but would need a development platform first. As I can't really program on real hardware for the next couple of months (renovating the house, no room for clunky hobbies right now :) ), I'm stuck with stuff I can do in an emulation environment.

Link to comment
Share on other sites

  • 2 weeks later...

80 columns or 256 colors are much more useful and allows for more use of the TI, Y.A.P.P. FW and many packages just sit dead in water today.

 

Besides games/utilities with 256 colors using a 9938 or 9958 would look much better then 9918 displays.

Link to comment
Share on other sites

@TheMole: Docs are stalled right the moment as I try to juggle to much life stuff. However, I will be starting a new thread in a little while dedicated to F18A programming information, help, and examples. I have a "register use" spreadsheet that details all the F18A enhancements, but I realized I forgot to post it anywhere... doh! This thread is so large now that the file would just get lost if I attached it here.

 

@Acadiel: There is a known sprite bug in the current F18A firmware. You can see details a page or two back in this thread. I'm on a fix and getting it tested, but doing a "general deployment" is going to take a while.

  • Like 1
Link to comment
Share on other sites

  • 1 month later...

I have a fix, but I have to test a lot of things before I can even release a beta for people with JTAG programming cables to try. I'm also still without a CF7 (working on getting it fixed), so I have not been able to work on a the in-place update code yet. Sorry for the delays, I'm putting as much time as I can into the fix / update.

Link to comment
Share on other sites

The SVI-328 is a really nice system, I like it a lot! The F18A does work in the SVI-328. In fact, the SVI-328 was one of the early systems I had a chance to test in thanks to another A.A. member who lives close enough to get together every now and then (Tempest).

 

Check out post #391 on page 16:

 

http://www.atariage.com/forums/topic/168968-f18a/page__st__375#entry2368132

 

Also, if you search this thread for "spectravideo" you will find most of my posts about working with it. A quick summary:

 

* The 9918A is soldered directly to the board, so you will have to remove it and add a socket. Be careful! It is really easy to pull a pad or trace on these old systems. Without trying to sound like a broken record, I highly recommend you use ChipQuik and hot air (a soldering iron is ok if you don't have a hot air rework station). Digikey sells a ChipQuik kit for $20 that has more than enough to do a 40-pin IC. Alternatively you can cut the legs off of the 9918A and remove them individually. This is much easier than trying to remove the whole VDP intact, and 9918A ICs are not hard to get a hold of (I have a few I'll send you if you need a spare).

 

* You will need to remove JP1 from the F18A so it outputs the CPUCLK. The NTSC version of the SVI-328 uses the CPUCLK from the VDP as the main system clock. I found this out the hard way, i.e. the F18A didn't work in the SVI-328 the first time I tried it because I had removed the CPUCLK output and physical pin from the design. The details are chronicled in this thread if you want to review them. Strangely the motherboard has a section for a dedicated system clock which it uses on the PAL version instead of the CPUCLK output from the VDP. On the NTSC version, that part of the board is unpopulated.

 

* The SVI-328 has a *really fast* Power-On Reset (PoR), and on the SVI-328 that was loaned to me, I was given permission to change the electrolytic capacitor used in the RC-time-constant circuit of the PoR to slow it down a little (about 300ms vs 50-100ms). If you don't change it, then you will need to reset the system *after* power is applied to get it working. Obviously the "reset" cannot be a power-off/power-on kind of reset, it must be a warm reset and I don't think the SVI-328 has a real reset button...

 

The SVI-328 has a *really* nice ROM BASIC. It fully supports the VDP and you can do bitmap graphics *and* text! Even the MSX1 BASIC does not support text in GM2 (the SVI-328 was the blueprint for the MSX system, so there are a lot of similarities).

 

Hmm, sitting here I just thought that I should have made the CPUCLK output programmable like I did to the GROMCLK, then you could over-clock your SVI-328 via software. :-)

post-24952-0-04987100-1361889550_thumb.jpg

post-24952-0-68466200-1361889551_thumb.jpg

post-24952-0-59408300-1361889553_thumb.jpg

Edited by matthew180
  • Like 1
Link to comment
Share on other sites

Wow! Nicely decked system!

I am a little skittish about desoldering the 9918A chip off the motherboard even though I'm pretty good at this sort of thing because I don't want to damage my new computer... I guess I will have to do it at some point because I don't want to have it hooked up to my TV all the time.

I would love to have an expander with disk drives and 80col so I can run CP/M on it, but these are rarer than hen's teeth in the US :(

Link to comment
Share on other sites

Vorticon also in Europe the expander svi605 is very rare!! In 5 years if found on Ebay only 4 seller, one in Holland, one in finland, One in germany, and one in New zealand!! Also the programs are very rare! For my opinion the svi328 plus expander is an evolution of TI99 idea.. consolle plus expander.. after i never looked this idea of computer. How computer history in time date of creation and using at 70% equal component was build a family of 8 bit .. granfather TI99, Uncle SEGA SC3000, father SVI328, son MSX1 computer , nephew MSX2. In theory MSX2 computer was what was to become the ti99/8 - /16 - /32 :-) Forget also the card for expander like 80 coloumn graphic card, rs232, another expansion memory 64k and 16k, ecc.. are rare. I looked at a retro computer fair the svi328 plus expander with all cards. The graphic card are no very good because the analogic signal out is no more stable and no good quality have.. If f18a can emulate 80 coloumn card wow!! I sayed at miracle! However if you wont try use a blumsx emulator.. work very well in svi emulation, if one ti99 user want discovered the svi328 computer i can send all my collection program for tape or disk.

Link to comment
Share on other sites

I have a fix, but I have to test a lot of things before I can even release a beta for people with JTAG programming cables to try. I'm also still without a CF7 (working on getting it fixed), so I have not been able to work on a the in-place update code yet. Sorry for the delays, I'm putting as much time as I can into the fix / update.

 

Happy to loan you mine if you'd like. Not intending to add pressure. :)

Link to comment
Share on other sites

  • 2 weeks later...

Update:

 

My CF7+ is back in operation so I could finally run the test programs for the new firmware. This is the fix list, please remind me if I missed something:

 

* Fixed the sprite collision bug. Only sprites with on-screen pixels are considered. The posted XB games are working correctly with the update.

 

* Fixed the 40-column text mode problem when the F18A 30-row option was enabled.

 

* Added more user vectors to the default GPU code.

 

If anyone reported any problems not listed here, please refresh my memory. I will be posting some photos and the updated firmware in the next few days. Anyone with a JTAG programmer can update right away, but I hope to have the software-only in-place update coming soon. The software update will require a CF7+ device.

 

I will also be offering the update for the cost of shipping if you want to send me your F18A to do the update. For U.S. people that will be about $5, for Canada it will be $12, for the rest of the world about $16. That cost does not include your cost to send me your F18A. For non-U.S. people that might be prohibitive I realize, but it is out of my control.

 

  • Like 1
Link to comment
Share on other sites

Great news! :)

 

Greg

 

Update:

 

My CF7+ is back in operation so I could finally run the test programs for the new firmware. This is the fix list, please remind me if I missed something:

 

* Fixed the sprite collision bug. Only sprites with on-screen pixels are considered. The posted XB games are working correctly with the update.

 

* Fixed the 40-column text mode problem when the F18A 30-row option was enabled.

 

* Added more user vectors to the default GPU code.

 

If anyone reported any problems not listed here, please refresh my memory. I will be posting some photos and the updated firmware in the next few days. Anyone with a JTAG programmer can update right away, but I hope to have the software-only in-place update coming soon. The software update will require a CF7+ device.

 

I will also be offering the update for the cost of shipping if you want to send me your F18A to do the update. For U.S. people that will be about $5, for Canada it will be $12, for the rest of the world about $16. That cost does not include your cost to send me your F18A. For non-U.S. people that might be prohibitive I realize, but it is out of my control.

Link to comment
Share on other sites

Anyone that comes to the european TI Treffen of this year and wants to update, I can bring my laptop with xilinx software and the JTAG programmer cable. All you need is your F18A chip and a powered ti99 mainboard. Just remind me on the cable before the Meeting, best via private message or mail.

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