Live data from Hacker News

UNIX99, a UNIX-like OS for the TI-99/4A (2025)

forums.atariage.com

51–60 of 76 posts

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#51
post #26

Earlier quoted context omitted.

Btw, there is a lovely third party replacement for the TI99/4a video chip that lets you output VGA. It’s a major life improvement if you are seriously using it. I Dremeled my case but you can route the ribbon cable to avoid it if you’d prefer not to modify anything. Happy to send you a link if you don’t already know about it.

Thanks! I've got mine running in to a 9" Pelco PVM and it works well but yea, its tiny. I'd love to plumb in VGA and use a 15" flat panel. Would love a link.

https://www.tindie.com/products/visrealm/pico9918/

There is very little documentation with this device but fortunately several YouTubers have made long videos showing every detail of the replacement. Enjoy!

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#52

@UsagiElectric on YouTube has a series of videos on building a homebrew around the TMS9900 processor. Would be cool if a unix-like OS could be used on something like that, though sounds like this project is specifically targeting the TI-99/4A system. The TI-99/4A was the first computer I owned as a teenager. I had used TRS-80s and Apple ][ at school. I eventually bought the expansion box and a couple of accessory car…

I have a bunch of TI-99 hardware in storage, have been thinking to donate it to a computer museum potentially. I had one in my hand when I was 5 thanks to my grandpa (it made me what I am today!).

Anyone up for a rousing game of Pole Position?

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#54

Interesting project. IIRC, one of the biggest challenges with the TI-99/4A was its TMS9900 processor. It was a 16-bit CPU, but had a really awkward memory architecture that made it difficult to write efficient code. The lack of dedicated registers meant a lot of memory access, which slowed things down considerably. This is probably why it never gained the same traction as the 6502-based systems like the Apple II or A…

The lack of dedicated registers meant a lot of memory access, which slowed things down considerably.

It gets worse because the TI99 only has 256 bytes of RAM directly addressable on its 16-bit bus. All the other memory in the system is video RAM and is accessed 8 bits at a time through the video display processor. Oh, and you can only do this when the VDP is not accessing the memory. This is incredibly slow and severely hobbles the potential performance of the CPU.

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#55
post #54

Interesting project. IIRC, one of the biggest challenges with the TI-99/4A was its TMS9900 processor. It was a 16-bit CPU, but had a really awkward memory architecture that made it difficult to write efficient code. The lack of dedicated registers meant a lot of memory access, which slowed things down considerably. This is probably why it never gained the same traction as the 6502-based systems like the Apple II or A…

The lack of dedicated registers meant a lot of memory access, which slowed things down considerably. It gets worse because the TI99 only has 256 bytes of RAM directly addressable on its 16-bit bus. All the other memory in the system is video RAM and is accessed 8 bits at a time through the video display processor. Oh, and you can only do this when the VDP is not accessing the memory. This is incredibly slow and sever…

Was that part of some kind of cost optimization? Why would anyone design such an obscurity?

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#57
post #54

Earlier quoted context omitted.

The lack of dedicated registers meant a lot of memory access, which slowed things down considerably. It gets worse because the TI99 only has 256 bytes of RAM directly addressable on its 16-bit bus. All the other memory in the system is video RAM and is accessed 8 bits at a time through the video display processor. Oh, and you can only do this when the VDP is not accessing the memory. This is incredibly slow and sever…

Was that part of some kind of cost optimization? Why would anyone design such an obscurity?

The whole thing seems like it was designed in a parallel universe, or at least it reeks of some kind of a sunk-cost-fallacy design-by-committee thing.

Supposedly what happened is that the system was originally designed to have either an 8-bit CPU, or a 16-bit CPU with an 8-bit bus (cf. 8086/8088) like TI's own TMS9985, but at some point it was decided that they should instead cram their full 16-bit TMS9900 minicomputer CPU (!) into the thing. This decision basically tanked the whole architecture.

It was too late/too expensive to redesign the 8-bit support chips to 16-bit counterparts so they had to make some really out there decisions like "talk to the graphics chip and give it an address to read/write every time you want to use memory" and "software is written not in machine code, but in GPL (Graphic Programming Language), which is then interpreted by the CPU and turned into actual TMS9900 machine code"

Software on ROM cartridge for the system is stored in GPL and is fetched from ROM by the CPU (but wait! The ROMs are not in memory space like they would be on a sane computer; they are SERIAL ROMs read 16 bits at a time with memory mapped I/O) and interpreted to machine code. This is slow. When you write your own software in BASIC, however, this gets worse: now you're writing BASIC, which is being interpreted and turned into GPL, stored in video RAM, and then fetched back from video RAM and turned into machine code by the CPU. THIS IS EVEN SLOWER.

Needless to say, the BASIC on the TI99 is dramatically slower than the already slow implementations on other contemporary micros.

It DOES have a full 16-bit CPU which is theoretically much more powerful than a 6502 or Z80 but this wild-ass implementation of... well, everything, makes the system probably the least capable machine of the era.

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#58
post #57

Earlier quoted context omitted.

Was that part of some kind of cost optimization? Why would anyone design such an obscurity?

The whole thing seems like it was designed in a parallel universe, or at least it reeks of some kind of a sunk-cost-fallacy design-by-committee thing. Supposedly what happened is that the system was originally designed to have either an 8-bit CPU, or a 16-bit CPU with an 8-bit bus (cf. 8086/8088) like TI's own TMS9985, but at some point it was decided that they should instead cram their full 16-bit TMS9900 minicomput…

RAM was very expensive then and 16 bit CPUs weren't that much faster to justify the cost if you were aiming for the home market.

Then again, what was this machine's target market?

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#59
I wish there were some cheap FPGA version of the 3rd party implementation of the planned successor, the TI-99/8.

It was called the Geneve 9640 from Myarc:

https://dressupgeekout.com/geneve/

http://www.mainbyte.com/ti99/geneve/geneve.html

Wikipedia has a decent article:

https://en.wikipedia.org/wiki/Geneve_9640

12 MHz un-crippled 16-bit CPU, 80 column text, 256 colour graphics, up to 2 MB of RAM.

That would be much more promising for a Unix-like OS!

They are extremely rare these days, but a cheapo emulation would be great fun -- it's able to run most software for the 99/4A.

Re: UNIX99, a UNIX-like OS for the TI-99/4A (2025)

#60
post #58
post #57

Earlier quoted context omitted.

The whole thing seems like it was designed in a parallel universe, or at least it reeks of some kind of a sunk-cost-fallacy design-by-committee thing. Supposedly what happened is that the system was originally designed to have either an 8-bit CPU, or a 16-bit CPU with an 8-bit bus (cf. 8086/8088) like TI's own TMS9985, but at some point it was decided that they should instead cram their full 16-bit TMS9900 minicomput…

RAM was very expensive then and 16 bit CPUs weren't that much faster to justify the cost if you were aiming for the home market. Then again, what was this machine's target market?

RAM was very expensive then and 16 bit CPUs weren't that much faster to justify the cost if you were aiming for the home market.

Both true, which makes this an even more baffling choice -- why pick the more expensive, state of the art 16-bit CPU* that you're getting little or no benefit from + 16K of extremely slow-to-access combined video and system RAM? You could have used a cheaper 8-bit CPU and maybe for the same budget have fit 4K or 8K of system RAM on the bus + some amount of dedicated video RAM for the VDP. This would have been faster and more useful in nearly all real world applications, make for a much cleaner board design, easier development, and probably cheaper. That's what everyone else did.

Then again, what was this machine's target market?

Home computing, so yeah.

http://www.vintagecomputing.com/wp-content/images/retroscan/...

* The reason is probably that TI wanted to show off their state-of-the-art CPU tech and be able to point to the spec sheet and say "look, it's 16 bit! All our competitors are only 8 bits -- that's half as many bits!"

Post reply on HN