From Z80 To EZ80: Porting 8-bit Sonic 2 To The TI-84+ CE

An unwritten rule is that if two systems runs even roughly the same CPU, you are obligated to port software between them, or at least give it a fair shake. This led [grubbycoder] down the path of porting Sonic 2 for the Sega Master System (to the eZ80-based Ti 84+ CE. Selecting this particular graphing calculator came down to the raw specs matching up the best, as although the eZ80 in the Ti 84+ runs at 48 MHz, it’s got wait states that cripple its actual performance. Since the calculator also lacks the Video Display Processor (VDP) and a few other bits of hardware, those extra cycles are crucial to compensate.

Sonic 2 on the Ti 84+ CE, courtesy of [grubbycoder]
Sonic 2 on the Ti 84+ CE, courtesy of [grubbycoder]
Getting the disassembled version of the game was easy enough, as the [Sonic Retro] team has already done the heavy lifting there. The only snag there was that this was in WLA-DX assembler format, which is great if you just want to create a ROM for a Z80 system, but for the eZ80 you need a different assembler. Here SPASM-ng came to the rescue, as it targets both Z80 and eZ80-based Ti calculators in particular.

With those ducks aligned, the next task was to address the hardware differences. The calculator has no sound, so those routines had to go, and the color palettes of the Master System had to be mapped to that of the calculator. Since it’s a calculator, there were plenty of buttons for input, but ROM banking – which isn’t a thing on the Ti calculator – and the background and sprite rendering posed some issues. With that sorted, anyone with this calculator can now rejoice at having something better to play on their calculators than Snake in between heavy linear algebra sessions.

Talking To A Texas Instruments Calculator

Texas Instruments is a world-class semiconductors company, but unfortunately what they are best known for among the general public is dated consumer-grade calculators thanks to entrenched standardized testing. These testing standards are so entrenched, in fact, that TI has not had to update the hardware in these calculators since the early 90s. They still run their code on a Z80 microcontroller, but [Ben Heck] found himself in possession of one which has a modern ARM coprocessor in it and thus can run Python.

While he’s not sure exactly what implementation of Python the calculator is running, he did tear it apart to try and figure out as much as he could about what this machine is doing. The immediately noticeable difference is the ARM coprocessor that is not present in other graphing calculators. After some investigation of test points, [Ben] found that the Z80 and ARM chips are communicating with each other over twin serial lines using a very “janky” interface. Jankiness aside, eventually [Ben] was able to wire up a port to the side of the calculator which lets him use his computer to send Python commands to the device when it is in its Python programming mode.

While there are probably limited use cases for 1980s calculators to run Python programs, we can at least commend TI for attempting to modernize within its self-built standardized testing prison. Perhaps this is the starting point for someone else to figure out something more useful to put these machines to work with beyond the classroom too. We’ve already seen some TI-84s that have been modified to connect to the Internet, for example.

Thanks to [Nikša] for the tip!

Continue reading “Talking To A Texas Instruments Calculator”

Ray Tracing On A Modern TI Graphing Calculator

Something being impractical isn’t any reason not to do it, which is why just about anything with a CPU in it can run Doom by now. For the same reason there obviously is a way to do ray tracing of 3D scenes on a modern-day TI-84 Plus CE graphical calculator. This is excellent news for anyone who has one of these calculators, along with a lot of time, perhaps during boring classes, to spare.

As [TheScienceElf] demonstrates in a video, also embedded after the break, it’s not quite the real-time experience one would expect from an NVidia RTX 30-series GPU. Although the eZ80-based CPU in the calculator is significantly more efficient than a Z80 as found in many 1980s home computers, the demo scene at standard resolution takes about 12 minutes to render, as also noted on the GitHub project page.

Perhaps the most interesting part about this project is its use of the Clang-based C & C++ toolchain for the TI-84 Plus CE which gives easy access to the calculator’s hardware and related, including graphics, file I/O, fonts, keypad input and more. Even if using a TI-84 Plus CE to render the next Pixar-level movie isn’t the most productive use imaginable for these devices, this project and the CE toolchain make it all too easy to tinker with these $150 devices.

It would also offer a nice change of pace from writing Snake in TiBASIC, a BASIC dialect in which [TheScienceElf] incidentally has also written a ray tracer.

(Thanks to [poiuyt] for the tip)

Continue reading “Ray Tracing On A Modern TI Graphing Calculator”

Hacking An Obsolete Yet Modern Calculator

The gold standard for graphing calculators, at least in the US, are the Texas Instruments TI-84 series. Some black sheep may have other types, but largely due to standardized testing these calculators dominate the market. Also because of standardized testing, these calculators have remained essentially unchanged for decades. While this isn’t great for getting value for money, it does mean that generations of students have been able to hack on these calculators to do all kinds of interesting things as [George Hilliard] outlines.

Even before the creation of these graphing calculators, the z80 processor behind them was first produced over four decades ago and was ubiquitous in the computer scene at the time, which also lends to its hackability. There’s plenty to catch up on here, too, from custom TI games that trick the two-tone display into grayscale to Game Boy emulators that can play Zelda since the TI and Game Boy share the same processors. There are also several methods of running native code or otherwise “jailbreaking” these devices to run arbitrary code.

It looks like the world of TI hacking is alive and well now, and with several decades of projects to browse there’s always something new to find. As it stands, there may be more decades of these types of projects to come, since neither TI nor the various testing standardization companies and government agencies show any signs of changing any time soon.

Thanks to [Adrian] for the tip!

Hackaday Links Column Banner

Hackaday Links: May 23, 2021

The epicenter of the Chinese electronics scene drew a lot of attention this week as a 70-story skyscraper started wobbling in exactly the way skyscrapers shouldn’t. The 1,000-ft (305-m) SEG Plaza tower in Shenzhen began its unexpected movements on Tuesday morning, causing a bit of a panic as people ran for their lives. With no earthquakes or severe weather events in the area, there’s no clear cause for the shaking, which was clearly visible from the outside of the building in some of the videos shot by brave souls on the sidewalks below. The preliminary investigation declared the building safe and blamed the shaking on a combination of wind, vibration from a subway line under the building, and a rapid change in outside temperature, all of which we’d suspect would have occurred at some point in the 21-year history of the building. Others are speculating that a Kármán vortex Street, an aerodynamic phenomenon that has been known to catastrophically impact structures before, could be to blame; this seems a bit more likely to us. Regardless, since the first ten floors of SEG Plaza are home to one of the larger electronics markets in Shenzhen, we hope this is resolved quickly and that all our friends there remain safe.

In other architectural news, perched atop Building 54 at the Massachusetts Institute of Technology campus in Cambridge for the last 55 years has been a large, fiberglass geodesic sphere, known simply as The Radome. It’s visible from all over campus, and beyond; we used to work in Kendall Square, and the golf-ball-like structure was an important landmark for navigating the complex streets of Cambridge. The Radome was originally used for experiments with weather radar, but fell out of use as the technology it helped invent moved on. That led to plans to remove the iconic structure, which consequently kicked off a “Save the Radome” campaign. The effort is being led by the students and faculty members of the MIT Radio Society, who have put the radome to good use over the years — it currently houses an amateur radio repeater, and the Radio Society uses the dish within it to conduct Earth-Moon-Earth (EME) microwave communications experiments. The students are serious — they applied for and received a $1.6-million grant from Amateur Radio Digital Communications (ARDC) to finance their efforts. The funds will be used to renovate the deteriorating structure.

Well, this looks like fun: Python on a graphing calculator. Texas Instruments has announced that their TI-84 Plus CE Python graphing calculator uses a modified version of CircuitPython. They’ve included seven modules, mostly related to math and time, but also a suite of TI-specific modules that interact with the calculator hardware. The Python version of the calculator doesn’t seem to be for sale in the US yet, although the UK site does have a few “where to buy” entries listed. It’ll be interesting to see the hacks that come from this when these are readily available.

Did you know that PCBWay, the prolific producer of cheap PCBs, also offers 3D-printing services too? We admit that we did not know that, and were therefore doubly surprised to learn that they also offer SLA resin printing. But what’s really surprising is the quality of their clear resin prints, at least the ones shown on this Twitter thread. As one commenter noted, these look more like machined acrylic than resin prints. Digging deeper into PCBWay’s offerings, which not only includes all kinds of 3D printing but CNC machining, sheet metal fabrication, and even injection molding services, it’s becoming harder and harder to justify keeping those capabilities in-house, even for the home gamer. Although with what we’ve learned about supply chain fragility over the last year, we don’t want to give up the ability to make parts locally just yet.

And finally, how well-calibrated are your fingers? If they’re just right, perhaps you can put them to use for quick and dirty RF power measurements. And this is really quick and really dirty, as well as potentially really painful. It comes by way of amateur radio operator VK3YE, who simply uses a resistive dummy load connected to a transmitter and his fingers to monitor the heat generated while keying up the radio. He times how long it takes to not be able to tolerate the pain anymore, plots that against the power used, and comes up with a rough calibration curve that lets him measure the output of an unknown signal. It’s brilliantly janky, but given some of the burns we’ve suffered accidentally while pursuing this hobby, we’d just as soon find another way to measure RF power.

Overclocking And Watercooling The TI-84, Just Cause

The TI-84 is an enduring classic – the calculator that took many through high school, college and beyond. A hacker’s favorite, it’s been pushed to the limits in all sorts of ways. The crew at [Linus Tech Tips] decided to join in the fun, overclocking a TI-84 Plus and adding water cooling to boot. 

The TI-84 uses a simple resistor capacitor circuit to generate its clock, making it overclocking it a cinch. By changing the resistor value in the circuit, the clock can be made to run faster. The team have some issues with pads delaminating from the PCB, but manage to sub in a trimpot which lets the clock be changed on the fly. A boost of 10MHz over stock gets the calculator operating at 26MHz, with notably quicker performance in the TI port of Doom 2. Without accurate measurement of CPU temps, it’s hard to say whether watercooling the calculator is justified. However, the team do a great job of entirely overengineering the solution, with a custom-made cooling block hooked up to a massive spherical reservoir.

With the stability issues inherent in overclocking, and the unwieldy watercooling tubes, it’s not a good hack in the practicality sense. It is, however, quite amusing, and that’s always worth something. TI calculators have long been targets for hackers, and you can even get them online if you so desire. Video after the break.

Continue reading “Overclocking And Watercooling The TI-84, Just Cause”

Pocket Forth Invades Your TI Calculator

TI certainly have certainly seen off rivals such as HP or Casio to capture the lion’s share of the calculator market. The TI-84 is a real staple, and with as many units as there are out there, hacking them is a given. However, selecting an operating system for the machine can be a hassle. TI-OS is proprietary and doesn’t really want to let you do everything you’d like to. There are alternatives, but many of them won’t let you easily use your calculator to be — well — a calculator.

[Siraben] has zkeme80 which is essentially ANS Forth (mostly) with extensions for the TI hardware. You can easily extend the system, of course, because it is Forth. You can also use the machine for its intended purpose easily.

Continue reading “Pocket Forth Invades Your TI Calculator”