Jump to content
IGNORED

TIM v9958 video upgrade for the TI-99/4A


RickyDean

Recommended Posts

3 hours ago, RickyDean said:

Answers:

1) OPA owner and developer is in federal custody, he left Canada years ago to escape prosecution, but was apprehended and brought to trial in America a couple of years ago.

2)Schematics and plans are not readily available, just some pictures. It can be and has been reverse engineered, by one individual,  but not for profit. The video chip may not be easy to find, and the secondary unit,  the OS replacement board, the Son of a Board was closed source. It can be emulated, by other devices like the Gram Kracker.

Not at all simple then. Thank you for the info, I had nooo idea.

Link to comment
Share on other sites

40 minutes ago, Tursi said:

The F18A is a 9918A replacement designed to provide a better video output. Enhancements were made to it because they could be, but they are done in such a way that the F18A is substantially more compatible with 9918A software than the 9938 or 9958. (Basically, they are locked out until a particular sequence happens.) At the same time, it has just enough compatibility to provide the 80 column mode in software that doesn't need the extra video RAM, which was the main feature that most users really wanted. ;)

 

So not many were ever produced, which in itself limits software and continued support.

 

So in a modern day, practical sense the F18A is the way to go. Thanks Tursi.

Link to comment
Share on other sites

I once upon a time stuck a TIM board in my Coleco ADAM and got it to work (that was a strapping option on the TIM board and plans were apparently in place to support the ADAM). The issue is that the 9958 upon initialization has a set of palette registers not found on the 9928/9918 that you have to program for there to be any video output. Otherwise, all output is black on black! I wrote a small program to initialize these registers on the ADAM and it worked. I suspect that's probably all that's in the SOB otherwise you'd likely also get a blank/black screen on the TI.

  • Like 4
Link to comment
Share on other sites

4 hours ago, Geoff Oltmans said:

I once upon a time stuck a TIM board in my Coleco ADAM and got it to work (that was a strapping option on the TIM board and plans were apparently in place to support the ADAM). The issue is that the 9958 upon initialization has a set of palette registers not found on the 9928/9918 that you have to program for there to be any video output. Otherwise, all output is black on black! I wrote a small program to initialize these registers on the ADAM and it worked. I suspect that's probably all that's in the SOB otherwise you'd likely also get a blank/black screen on the TI.

That was a problem with many of the 80-column boards using the 9938/9958. I've actually got a few test boards of a 9938 equivalent to the TIM, but I still have to build/test them. . .

  • Like 5
Link to comment
Share on other sites

5 hours ago, Geoff Oltmans said:

I once upon a time stuck a TIM board in my Coleco ADAM and got it to work (that was a strapping option on the TIM board and plans were apparently in place to support the ADAM). The issue is that the 9958 upon initialization has a set of palette registers not found on the 9928/9918 that you have to program for there to be any video output. Otherwise, all output is black on black! I wrote a small program to initialize these registers on the ADAM and it worked. I suspect that's probably all that's in the SOB otherwise you'd likely also get a blank/black screen on the TI.

I met someone at a computer meet in Ottawa back in the 90s who was also excited about getting a TIM for his Adam, so they were definitely collecting money for it! :)

  • Like 3
Link to comment
Share on other sites

  • 1 year later...
On 5/22/2018 at 7:58 AM, RickyDean said:

Ladies and Gents,

at the request of one of the members here I am posting some photos of the TIM video upgrade that was produced by OPA back in the 'day'.

I have had this in storage since 1999 and used it during the mid-90's. Also find attached a couple of photos of the SOB that was sold to go along with the TIM and if you have PC99 you can play with the included SOB console grom upgrade, in it.

 

post-41593-0-43626300-1526990113_thumb.jpg

post-41593-0-10616900-1526990128_thumb.jpg

post-41593-0-43419500-1526990140_thumb.jpg

post-41593-0-79355000-1526990149_thumb.jpg

post-41593-0-91259600-1526990157_thumb.jpg

I took the time last night and this morning and desoldered all the IC's and replaced them with machined sockets, now I can replace as needed and can use the 9958 sockets to test China purchased 9958's as well as tang 20k's

20240202_132449.jpg

20240202_132459.jpg

  • Like 7
Link to comment
Share on other sites

@RickyDean looks cool. Great shape.

 

Wish I still had my own TIM but hurricane Matthew when it Dominican Republic wiped it out, lost in a sea of mudslide that took out 1/3 of my house.

 

I have a good piece of source code that like a 9958 system tester. I will upload it later on after I dig thru my archives this weekend that will help make sure any vdp you test is solid.

 

You could add some jumpers as well so you can test 9938 on the board as well

  • Like 2
  • Sad 2
Link to comment
Share on other sites

My V58 system tester was infact included with my Dijit Avpc DSR source code release already, but I will attached the source here, as a DOS TEXT file.

 

It is designed to be assembled and ran from the >6000 RAM (SuperCart) space (not rom, as the BLWP VMODE library call has its workspace inside itself, making it not compatible with ROM only version), but VMODE is nice little compact utility allowing you to select MC, G1 to G7, T1, T2 all by just placing a number in R0 and the R2/R9 VDP registers in R1, very handy setup.

 

It basically draws high-speed string-art type lines on the screen, so it makes a good test of the first bank of ram, it does need to be expanded with option to test all banks of the 192k of ram, but i never got around to adding that.

v9958-s.txt

Edited by Gary from OPA
  • Like 5
Link to comment
Share on other sites

I am new to the story.
I am working on an FPGA Graphics Card for the ADAM.  You can always say what?  But after disassembling the EOS 7 BIOS and discovered that there are hooks in place for such a device.
What I am working on is a 9938 with full instruction set.

To this point, I thought that the 9958 only had compatibility with the earlier MSX by emulating the tiles through software.
I think I read that somewhere so I settled for the 9938 to avoid a bunch of nonsense because the likely hood of it becoming a huge deal was minimal.

 

I can update the BIOS or change out the MIOC to do anything I want on an ADAM.  But a universal card would need something less intrusive like the 9938

I mean, if I can use a 9958 or even create some custom modes then why not.

  • Like 1
Link to comment
Share on other sites

38 minutes ago, Captain Cozmos said:

I am new to the story.
I am working on an FPGA Graphics Card for the ADAM.  You can always say what?  But after disassembling the EOS 7 BIOS and discovered that there are hooks in place for such a device.
What I am working on is a 9938 with full instruction set.

To this point, I thought that the 9958 only had compatibility with the earlier MSX by emulating the tiles through software.
I think I read that somewhere so I settled for the 9938 to avoid a bunch of nonsense because the likely hood of it becoming a huge deal was minimal.

 

I can update the BIOS or change out the MIOC to do anything I want on an ADAM.  But a universal card would need something less intrusive like the 9938

I mean, if I can use a 9958 or even create some custom modes then why not.

Sounds interesting. If you need any help let me know. The 9958 can basically go everything the 9938 can do minus the mouse feature and composite video

Link to comment
Share on other sites

12 minutes ago, Gary from OPA said:

Sounds interesting. If you need any help let me know. The 9958 can basically go everything the 9938 can do minus the mouse feature and composite video

Thanks, I will certainly need all the help I can get concerning the 9958.
 

My other thought is the purpose of using any of the 99--- Series.
Compatibility of what? and Why? when there is nothing to be compatible with.

 

Hear me out.
All I honestly have to do is make sure the old ADAM software works.

I can create new modes because the things is an FPGA.

I can make a Bitmapped mode, 80 columns, Scroll registers, a billion sprites with no flicker and 20 colors.  Yes I am exaggerating but you get the point.

If I chose not to use an FPGA I can use any one of chips that can run a simulated graphics card in software with all the memory it can fit.

 

So I am torn between what would have been 40 years ago if Coleco didn't destroy themselves and what is possible today.

Edited by Captain Cozmos
  • Like 2
Link to comment
Share on other sites

I think the random compatibility issues showed up with the V9990, as it was "mostly," but not completely, compatible with the V9938 and the V9958. One other thing the V9958 lost besides the mouse was the composite output, so building to full V9938 compatibility and then including the incremental enhancements of the V9938 makes a lot of sense when doing an FPGA version. For that matter, including the improvements of the V9990 in a V9938-compatible format might be an interesting use case as well (among other things, it gives you even more video memory space (up to 512K) and omnidirectional scrolling). I attached a copy of the manual here.

yamaha_v9990.pdf

  • Like 2
Link to comment
Share on other sites

5 minutes ago, Ksarul said:

I think the random compatibility issues showed up with the V9990, as it was "mostly," but not completely, compatible with the V9938 and the V9958. One other thing the V9958 lost besides the mouse was the composite output, so building to full V9938 compatibility and then including the incremental enhancements of the V9938 makes a lot of sense when doing an FPGA version. For that matter, including the improvements of the V9990 in a V9938-compatible format might be an interesting use case as well (among other things, it gives you even more video memory space (up to 512K) and omnidirectional scrolling). I attached a copy of the manual here.

yamaha_v9990.pdf 4.77 MB · 0 downloads

I agree, it would be nice in the end to see v90 support working alongside v38/58 -- The first step is to get all v38 working perfectly, then add in the v58 as it is not much more, then the added modes for v90 would be nice as optional feature. It is something I like to do myself slowly as well, and there is already alot of FPGA stuff done for the MSX world in the v38 side of things, so its not too hard to finish it all and make it compatible for usage in the TI99 and Adam systems.

  • Like 2
Link to comment
Share on other sites

5 hours ago, Captain Cozmos said:

I am new to the story.
I am working on an FPGA Graphics Card for the ADAM.  You can always say what?  But after disassembling the EOS 7 BIOS and discovered that there are hooks in place for such a device.
What I am working on is a 9938 with full instruction set.

To this point, I thought that the 9958 only had compatibility with the earlier MSX by emulating the tiles through software.
I think I read that somewhere so I settled for the 9938 to avoid a bunch of nonsense because the likely hood of it becoming a huge deal was minimal.

 

I can update the BIOS or change out the MIOC to do anything I want on an ADAM.  But a universal card would need something less intrusive like the 9938

I mean, if I can use a 9958 or even create some custom modes then why not.

There are other fpga works out there of course, like the Tang 20k version and the 9938/58 in VHLD, I believe, so there is already code available.

I'd like to see the something that would fit and be usable in several systems maybe like the Tang 20k, that uses a separate board to mount the tang, then a ribbon cable and small board to plug into the 9918 or the 9938 socket, or a single board that can be configured for 40 pin or 64 pin mounting.

I'd like to see a menuing option to change the Vram from minimum required to maximum required, like from 64k to 192k on the 38/58 options, or the max for the v9990 option, and the ability to turn on/off the type of VDP being emulated in the menu.

The Tang is a good alternative, but for my Geneve, it apparently starts up at an inappropriate time, so the startup screen of the Geneve is not shown, and this can be detrimental as there is a Bios that you can select an option of which drive the OS boots from.

This is not working on the Tang, and I haven't been able to determine if it can be modified to do so.

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

@RickyDean i have not looked at the tang 20k setup yet, plus i lost my Geneve in Dominican Republic during the big hurricane Matthew, but the two options you would have is to modify the geneve bootup eprom to have a delay loop to wait for a while until the tang 20k is up and running before it starts sending code to vdp to display info, the problem with some fpga setups and ones that also use like raspberry pi with sdcard is that they need to powerup fully and boot, before they are operational, so the other way maybe is to have a different power system for tang 20k, so you power it up first, then startup the geneve -- not sure how you have your setup done if that is possible. 

  • Like 3
Link to comment
Share on other sites

12 minutes ago, Gary from OPA said:

@RickyDean i have not looked at the tang 20k setup yet, plus i lost my Geneve in Dominican Republic during the big hurricane Matthew, but the two options you would have is to modify the geneve bootup eprom to have a delay loop to wait for a while until the tang 20k is up and running before it starts sending code to vdp to display info, the problem with some fpga setups and ones that also use like raspberry pi with sdcard is that they need to powerup fully and boot, before they are operational, so the other way maybe is to have a different power system for tang 20k, so you power it up first, then startup the geneve -- not sure how you have your setup done if that is possible. 

The Tang is started up with a usb C connector before the Geneve is turned on, never have had the swan show up. Always the screen or something similar that is on this yoube video I posted, and this Atariage thread .

 

 

Edited by RickyDean
spelling
  • Like 2
Link to comment
Share on other sites

Ok, couple of things here.  The 2.00 bios source code can be found here:  BeeryMiller/Boot-Eprom at Version-2.00 (github.com)

If changes are required with register writes before the actual screen is shown of the swan, then that is an option to modify the bios to work with the TANG.

 

Next, I would suggest downloading the file MDOS Version 7.40 and Utilities – 9640 News .  Grab the files in the MOUSE directory.  Load the Bus mouse driver.  Do not worry if you do not have a mouse, you just need a driver loaded.  Then in the MOUSE/PGMS folder, run the MDTEST program.

 

The MDTEST program allows you to step through all the video modes of the Geneve. From there, you can press the "6" key to step through the various video modes. If you lose the displayed text in any of the text mode or graphic mode screens, then you have identified an incompatible graphic mode that has an issue on the TANG.

 

Beery

 

  • Like 4
  • Thanks 1
Link to comment
Share on other sites

  • 2 months later...
On 5/22/2018 at 7:58 AM, RickyDean said:

Ladies and Gents,

at the request of one of the members here I am posting some photos of the TIM video upgrade that was produced by OPA back in the 'day'.

I have had this in storage since 1999 and used it during the mid-90's. Also find attached a couple of photos of the SOB that was sold to go along with the TIM and if you have PC99 you can play with the included SOB console grom upgrade, in it.

 

post-41593-0-43626300-1526990113_thumb.jpg

post-41593-0-10616900-1526990128_thumb.jpg

post-41593-0-43419500-1526990140_thumb.jpg

post-41593-0-79355000-1526990149_thumb.jpg

post-41593-0-91259600-1526990157_thumb.jpg

@Gary from OPA do you have the code for this Atmel AT22V10's that you used on the SOB? It seems that you were on the "cusp" of bigger things using the reprogrammable PLD, were you looking at the possibility in the day of upgrading the SOB for instance to do more than just what you originally designed it to do?

  • Like 1
Link to comment
Share on other sites

1 minute ago, RickyDean said:

@Gary from OPA do you have the code for this Atmel AT22V10's that you used on the SOB? It seems that you were on the "cusp" of bigger things using the reprogrammable PLD, were you looking at the possibility in the day of upgrading the SOB for instance to do more than just what you originally designed it to do?

Good pictures of the TIM and SOB, I should use them (with your permission of course) to update the bad quality photos on my garyopa.com website.

 

The Pop-Cart was basically the next step up from the SOB, as it could do a lot more and override the console groms, I just posted about the PLD stuff in the XB3 thread, as basically the first two GAL's on the SOB are the same on the pop-cart with an added 3rd one.

 

Of course today newer tech can do alot more, but it was not bad for back in the day, I was very good at jamming in all the logic and getting the timing right, all tho the SOB I had to add a resistor as you see in the photos to fix up timing issue on some /4a consoles, that problem was fixed in the pop-cart system.

 

I have been working slowly on recreating the final logic, I have old printouts but not the jedec files themselves.

 

Maybe, if you have the tools and still the SOB you could try cracking the write-protect and dumping the logic for both of our sakes, or if you want and willing to part for it for a couple of weeks I could do it and send it back to you. you have to be careful there is UV window underneath those PLD's can be erased by UV light, later on the Pop-cart used a version with that, and again the different between a normal PLD without UV erase and a electrically erasable GAL is different in timing so the code has to be adjusted depending on brand and type of PLD it is.

 

These days for internal console grom mods, the Grommy from Eric seems to be best idea, but he has not updated that thread in a long time, and I have been looking at various other options as well, besides trying to recreate my original hardware, sadly I lost my own pop-cart, tim, sob in the hurricane matthew in DR, but good thing is my human brain is still working fine and my memory storage is amazing for human at my age, and want to get as much out of my biological sponge before it starts to downhill.

 

Thanks.

  • Like 3
Link to comment
Share on other sites

4 minutes ago, Gary from OPA said:

Good pictures of the TIM and SOB, I should use them (with your permission of course) to update the bad quality photos on my garyopa.com website.

 

The Pop-Cart was basically the next step up from the SOB, as it could do a lot more and override the console groms, I just posted about the PLD stuff in the XB3 thread, as basically the first two GAL's on the SOB are the same on the pop-cart with an added 3rd one.

 

Of course today newer tech can do alot more, but it was not bad for back in the day, I was very good at jamming in all the logic and getting the timing right, all tho the SOB I had to add a resistor as you see in the photos to fix up timing issue on some /4a consoles, that problem was fixed in the pop-cart system.

 

I have been working slowly on recreating the final logic, I have old printouts but not the jedec files themselves.

 

Maybe, if you have the tools and still the SOB you could try cracking the write-protect and dumping the logic for both of our sakes, or if you want and willing to part for it for a couple of weeks I could do it and send it back to you. you have to be careful there is UV window underneath those PLD's can be erased by UV light, later on the Pop-cart used a version with that, and again the different between a normal PLD without UV erase and a electrically erasable GAL is different in timing so the code has to be adjusted depending on brand and type of PLD it is.

 

These days for internal console grom mods, the Grommy from Eric seems to be best idea, but he has not updated that thread in a long time, and I have been looking at various other options as well, besides trying to recreate my original hardware, sadly I lost my own pop-cart, tim, sob in the hurricane matthew in DR, but good thing is my human brain is still working fine and my memory storage is amazing for human at my age, and want to get as much out of my biological sponge before it starts to downhill.

 

Thanks.

Yes you can use them, if need be I can even take clearer pictures.

  • Like 1
Link to comment
Share on other sites

1 minute ago, RickyDean said:

Yes you can use them, if need be I can even take clearer pictures.

Thanks, I will let you know. -- I need to start to update my garyopa.com site, I added a bit about my GitHub on the front page, but I need to add the public source code releases I done so far, and also add in the missing stuff about Pop-Cart, etc.

  • Like 2
Link to comment
Share on other sites

On 1/5/2023 at 4:44 PM, Geoff Oltmans said:

I once upon a time stuck a TIM board in my Coleco ADAM and got it to work (that was a strapping option on the TIM board and plans were apparently in place to support the ADAM). The issue is that the 9958 upon initialization has a set of palette registers not found on the 9928/9918 that you have to program for there to be any video output. Otherwise, all output is black on black! I wrote a small program to initialize these registers on the ADAM and it worked. I suspect that's probably all that's in the SOB otherwise you'd likely also get a blank/black screen on the TI.

ok i see it now. -- the only reason the TI99 needs the SOB is because the console grom 0 for some silly reason setups the TMS9918 registers wrong by setting unused bits to the opposite default value that listed in the original specs, it of course does nothing on a tms9918/28/29 chip, but when the v9938 or 58 chip is there having the unused bits set, causes all sort of problems.

 

As for ADAM I originally made the hardware compatible, but the job in making the OS compatible was for Dale Wick which was active programmer at the time for the local Toronto MTAG users group, so I installed a AIM as it was called in his machine, and waited for the programming to be done, he did some tests and had a bunch of stuff written and apps working, but sadly never released it, he got too busy with young family and his university schooling, and dropped interest.

 

I did a few years ago, make contact with him and he was looking at picking it back up again, and more recently I was looking at buying a complete Adam machine from someone that had stored one away in perfect condition but i never heard back from the grandson that was selling it from his grandmother collection, most likely he discovered the true value of boxed system and quickly sold it on ebay for much more money.

 

Anyway, at some point I will look into getting some software done on the adam system, and I think some others have recently done similar work, but just like the ti99 world, most have moved onto using the f18a type devices in the adam instead.

Edited by Gary from OPA
  • Like 2
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...