<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.3">Jekyll</generator><link href="https://nicole.express/feed.xml" rel="self" type="application/atom+xml" /><link href="https://nicole.express/" rel="alternate" type="text/html" /><updated>2026-06-07T09:03:21-04:00</updated><id>https://nicole.express/feed.xml</id><title type="html">Nicole Express</title><subtitle>Nicole Express: Hobbyist video game development, examinations into old consoles, and more!</subtitle><entry><title type="html">The Truth about Sega’s TradeMark Security System (TMSS)</title><link href="https://nicole.express/2026/the-truth-about-tmss.html" rel="alternate" type="text/html" title="The Truth about Sega’s TradeMark Security System (TMSS)" /><published>2026-06-07T09:03:00-04:00</published><updated>2026-06-07T09:03:00-04:00</updated><id>https://nicole.express/2026/the-truth-about-tmss</id><content type="html" xml:base="https://nicole.express/2026/the-truth-about-tmss.html"><![CDATA[<p>I’m bringing out the <strong>truth</strong> about TMSS! <strong>Admit it!</strong> Sega never made a game console that can’t play that region’s release of <em>Phantasy Star II</em>, and it’s time to show exactly what that means and why. Let’s dig into the technical nitty-gritty of one of the biggest flops in console licensing history. Spoilers: It’s a little more complicated than you think, at least in Japan.</p>

<h2 id="trademarks-and-security-and-bears-oh-my">Trademarks and Security and Bears, oh my</h2>

<p><img src="/assets/img/segala2/gen1.jpeg" title="wait why doesn't it have HDMI if it has High Definition Graphics" alt="A Sega Genesis 1" /></p>

<p>This is my Model 1 Sega Genesis, VA3 motherboard. As a result, it has no security of any sort. When you plug in a cartridge, the Motorola 68000 starts executing code from the cartridge, and the VDP will output a video signal based off of the commands sent by the 68000. Even the export Sega Master System had a BIOS to check the cartridge had a valid header; this doesn’t even have that. In this regard, it is very similar to the Atari 2600, the Nintendo Famicom, top-loading NESes without the lockout chip, or Sega’s own SG-1000.</p>

<p>It would be the last Sega console to be this free.</p>

<aside><p>The Zilog Z80 could execute code at the very start if you're running in Master System mode. Yes, yes. However, every Sega Genesis that can execute Master System code does it without any security.</p></aside>

<p>From the beginning, Sega had planned to include the possibility of a security system in the Genesis; it just wasn’t present in the first release. Why? Unclear; perhaps they wanted to see if companies actually would try to release third-party cartridges before investing the time to implement. But in any case, if I turn on my Sega Genesis <a href="/2026/people-love-the-sega.html">MD3</a>, or any Genesis from the “VA6” variant of the Model 1 motherboard onwards, I am presented with this:</p>

<p><img src="/assets/img/segala2/tmss.png" title="produced by or under license from your mom GOTTEM" alt="PRODUCED BY OR UNDER LICENSE FROM SEGA ENTERPRISES LTD." /></p>

<aside><p>If you use an upscaler like the Framemeister, it can often take long enough to sync that you won't actually see the screen.</p></aside>

<p>This is the tell-tale mark of the TradeMark Security System (TMSS). I’ve talked about this <a href="/2020/trademarks-and-region-locks.html">before</a>, so I’ll summarize. The TMSS system displays a screen claiming that Sega endorsed the game in question. Therefore, to display the screen would be a trademark violation if Sega did <em>not</em> endorse the game, but the Genesis won’t play a game without displaying the screen.</p>

<p>TMSS-enabled consoles have a tiny boot ROM in the IO controller that does the following:</p>

<ol>
  <li>Have the string <code class="language-plaintext highlighter-rouge">SEGA</code> or ` SEGA<code class="language-plaintext highlighter-rouge"> (with a space) at address </code>0x100` in the ROM. This is what displays the copyright screen, but then the boot ROM turns off the VDP again.</li>
  <li>To activate it back again, the game must first write the 16-bit word “SEGA” to a certain address on the IO controller, before it turns on the VDP.</li>
</ol>

<p>Sega’s lawyers believed that doing this without the explicit written permission of Sega League Baseball would be a trademark violation. <a href="https://en.wikipedia.org/wiki/Sega_v._Accolade">Courts disagreed</a>, but you can’t blame a megacorporation for trying.</p>

<h3 id="games">Games</h3>

<p><em>Populous</em> by Electronic Arts is my go-to example of a game that doesn’t work on TMSS-enabled consoles; it doesn’t do either of the steps mentioned above. Therefore, even though it got the Sega Seal of Quality, it won’t run on many Genesis consoles.</p>

<p><img src="/assets/img/segalaw/sega-seal.jpg" title="If I can't trust marketing who can I trust" alt="The Sega Seal of Quality on a copy of Populous that doesn't run on most Genesis revisions" /></p>

<p>Now that we’re on the same page, let’s look at two games:</p>

<p><img src="/assets/img/segala2/2g.jpeg" title="mahjong lady's just here for fun" alt="Two games" /></p>

<p>These two games are the Japanese release of <em>Phantasy Star II</em>, and a pirate game called <em>Mahjong Lady</em>; the pirate game is actually just stolen from an unlicensed game, <em>Dial Q o Mawase</em>. These two games do not work on my Sega CDX, as you’d expect. They do work on the VA3 Genesis Model 1 (though <em>Phantasy Star II</em> doesn’t fit in the cartridge slot). So the same as <em>Populous</em>? Not quite.</p>

<p><img src="/assets/img/segala2/ps2.png" title="they redid all the drum samples for the US release" alt="Phantasy Star II title screen" /></p>

<p>That’s coming from my Genesis 3 (“MD3”), but only with the region switch set to Japan. You’d get the same thing on a Japanese Mega Drive 2. These games <em>work</em> on Japanese consoles with TMSS, but not American ones. So what’s special about them? They have the <code class="language-plaintext highlighter-rouge">SEGA</code> string where the boot ROM can see it, but they don’t write <code class="language-plaintext highlighter-rouge">SEGA</code> to the magic address.</p>

<aside><p>As far as I know, PAL consoles behave the same way as American ones. In this case, the relevant bit is actually just "Japan vs. Export". However, Asia region consoles seem to sometimes share the Japan behavior; that requires more research.</p></aside>

<p>So from this, can we conclude that TMSS in Japan only ever required the BIOS check, making it equivalent to the export Master System’s region check? Well, I’d hope it’d be that simple, but…</p>

<h2 id="channel">Channel</h2>

<p><a href="https://segaretro.org/TradeMark_Security_System">Sega Retro</a> makes some interesting claims about TMSS– for example, the TeraDrive got a cool full Sega logo screen. At the time of this writing, it lacks the information about the region difference I mention above. But more important is the following claim, hidden in a list of official games with partial TMSS support:</p>

<blockquote>
  <ul>
    <li>Sega Channel (Japanese version) — All cartridges (skips step 1)</li>
  </ul>
</blockquote>

<p>This is the first and only time I’ve ever heard of an official Sega cartridge missing Step 1. But on the other hand, the Sega Channel is kind of an oddball. But it also came out in 1994, by which time the Mega Drive 2 was released in Japan, which <em>always</em> has TMSS, even if it’s export-region TMSS.</p>

<p>So, I don’t have a Sega Channel for Japan or any other region. But there are versions of the BIOS ROM… around… and you can look at the address <code class="language-plaintext highlighter-rouge">0x100</code>.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>00000100: 2020 2020 2020 2020 2020 2020 2020 2020
00000110: 2843 2953 4547 4120 3139 3934 2e4a 554c  (C)SEGA 1994.JUL
00000120: 5345 4741 2043 4841 4e4e 454c 2041 4441  SEGA CHANNEL ADA
00000130: 5054 4552 2042 494f 5320 464f 5220 3143  PTER BIOS FOR 1C
00000140: 4849 5020 472f 4120 2020 2020 2020 2020  HIP G/A
</code></pre></div></div>

<p>The string Sega’s there, but it’s not where TMSS can find it. So something interesting is definitely going on here. Meanwhile, on an American Sega Channel, you see <code class="language-plaintext highlighter-rouge">SEGA</code> exactly where it’s expected.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>00000100: 5345 4741 2047 454e 4553 4953 0000 0000  SEGA GENESIS....
00000110: 2843 2954 2d58 5820 3139 3934 2e4a 414e  (C)T-XX 1994.JAN
00000120: 5365 6761 2043 6861 6e6e 656c 2020 2020  Sega Channel
00000130: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000140: 0000 0000 0000 0000 0000 0000 0000 0000  ................
</code></pre></div></div>

<aside><p>These come from the Unix xxd command, which should be available on most Linux and macOS computers, or presumably also Windows Subsystem for Linux.</p></aside>

<p>So now we have something to confirm. We know Japanese games can work if they don’t do step 2, as long as they have Sega in the right place. We know that games that do neither won’t work at all. But can games run without <code class="language-plaintext highlighter-rouge">SEGA</code> in the right place, as long as they still trigger the VDP address? Did Sega release a Sega Channel in Japan that didn’t work with the Mega Drives on store shelves? I wouldn’t put it past them, honestly.</p>

<p>Mind you, it’s also possible that the Sega Channel itself does some ROM-mapping shenanigans on bootup.</p>

<h2 id="test-harness">Test harness</h2>

<p>So, we want to try out some code on a Genesis. Unfortunately, a simple flash cart won’t work for this. Every Genesis flash cart I know of boots into an onboard BIOS when it first runs, even if only to check whether jumping to a game has been activated. Therefore, every flash cart already does the TMSS dance on bootup, if they want to work on most consoles.</p>

<p>What we want is to just shove a EPROM we can write to onto the Genesis’ 68000 bus. And that’s exactly what this cartridge, which I got from <a href="https://www.ebay.com/sch/i.html?item=156078610879&amp;rt=nc&amp;_trksid=p4429486.m3561.l161211&amp;_ssn=mamoh-4702">this eBay seller</a>, does.</p>

<p><img src="/assets/img/segala2/cart.jpeg" title="nice and simple" alt="A Sega Genesis cartridge PCB" /></p>

<p>So, easy-peasy, right? Yes, that’s what I thought too, until I tried to put a 27C160 into my EPROM programmer.</p>

<p><img src="/assets/img/segala2/nope.jpeg" title="damnit" alt="One too many rows of pins here" /></p>

<p>Yep, you might notice that it’s got one too many pins. After looking around for a solution to this, eventually I built one of these <a href="https://github.com/mafe72/27c160-tl866-adapter">adapters</a>, which let you treat a larger 16-bit EPROM as several smaller ones. I got this as a kit; it’s very reassuring to solder something and have it work the first time!</p>

<p><img src="/assets/img/segala2/adapt.jpeg" title="it's a bit annoying to use this on a T48 because of the placement of the ZIF socket switch, it was really designed for the older models" alt="The adapter inside the programmer, with a larger ZIF socket and some dip switches" /></p>

<p>Note that you’ll be pretending that your device is an “AM27C4096@DIP40”, but it won’t have the right ID. That’s fine as long as you see something like this; the command line <code class="language-plaintext highlighter-rouge">minipro</code> is nice enough to let you know that it detected a 27C160.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Invalid Chip ID: expected 0x1001900, got 0x2000B100 (M27C160@DIP42)
(use '-y' to continue anyway at your own risk)
</code></pre></div></div>

<p>There is one more problem you’ll have to overcome, though. You see, the EPROM is 16-bit. A Genesis ROM dump intended to be used in an emulator is pretty much always going to be arranged as a “little-endian” 16-bit ROM. This means the byte ordering will match what Intel x86 CPUs use, as well as AMD x86-64 and essentially all ARM CPUs in actual use, including the Apple M3 I’m writing this blog post on. That’s great for your emulator, but the Motorola 68000 is actually “big-endian”. So you need to swap every 8-bit byte with the one next to it. It turns out <a href="https://stackoverflow.com/questions/71182536/swap-or-replace-bytes-in-a-binary-file-from-command-line">Stack Overflow</a> taught me the common Unix command <code class="language-plaintext highlighter-rouge">dd</code> can do that, which is nice.</p>

<p>Do all that, and you’ll finally get this:</p>

<p><img src="/assets/img/segala2/hell.png" title="hellfire! hell hell fire!" alt="Hellfire title screen" /></p>

<p>I chose Toaplan’s <em>Hellfire</em> for two reasons:</p>

<ol>
  <li>It misuses the YM2612 sound chip in ways that are perfectly fine on the YM2612, but it means on later Genesises that use an integrated YM3438, the sound plays too slowly, so it’s fun to use as a test game.</li>
  <li>It’s a small enough game that putting the ROM using the adapter doesn’t require me to break it up into parts.</li>
</ol>

<aside><p>Discrete YM2612s can have issues with <i>Earthworm Jim</i>, whose soundtrack was only tested on YM3438-containing systems and is known to stutter a bit otherwise. Therefore, there is no ideal Genesis that can play every licensed game without issue.</p></aside>

<p><em>Hellfire</em> as a game is fully licensed by Sega, and follows all the TMSS rules. But it’s extremely easy to overwrite the ROM header. We could even use the name of <strong>The Enemy</strong>.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>00000100: 6e69 6e74 656e 646f 3f3f 3f3f 3f3f 3f20  nintendo???????
00000110: 2843 2954 2d33 3520 3139 3930 2e4a 554e  (C)T-35 1990.JUN
00000120: 4845 4c4c 4649 5245 2020 2020 2020 2020  HELLFIRE
</code></pre></div></div>

<p>This should run fine in emulators, because there’s no real reason to emulate TMSS. But what about consoles? We’ve overwritten the header, but it still should write to the magic address afterwards. And of course, the Sega Genesis Model 1 VA3…</p>

<p><img src="/assets/img/segala2/hell.png" title="reusing screenshots to save the environment" alt="Hellfire title screen" /></p>

<p>Runs everything.</p>

<h3 id="results">Results</h3>

<table>
  <thead>
    <tr>
      <th>Console</th>
      <th>Region</th>
      <th>Runs?</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Sega Genesis Model 1 VA3</td>
      <td>Export</td>
      <td>✅</td>
    </tr>
    <tr>
      <td>Sega CDX</td>
      <td>Export</td>
      <td>❌</td>
    </tr>
    <tr>
      <td>Sega Mega Drive 2</td>
      <td>Japan</td>
      <td>❌</td>
    </tr>
    <tr>
      <td>Sega Genesis 3 (“MD3”)</td>
      <td>Export</td>
      <td>❌</td>
    </tr>
    <tr>
      <td>Sega Genesis 3 (“MD3”)</td>
      <td>Japan</td>
      <td>❌</td>
    </tr>
  </tbody>
</table>

<p>So, this basically shows that yes, the header is necessary for TMSS to function, even in Japan. And therefore, Sega Channel must be doing something special, either mapping its ROM in a particular way, or maybe even just taking over the bus on bootup to fake the expected <code class="language-plaintext highlighter-rouge">SEGA</code>. I’d need to get my hands on one of those to find out, and likely even a logic analyzer; that’s beyond the capabilities of my setup at the moment.</p>

<p>One thing I do find interesting is that I didn’t even get a video signal I could sync to from the Mega Drive 2, while the others gave a blank output. This might imply that it implements this slightly differently, but I’m not sure. In any case, I think this slightly more elucidates the inner working of Sega’s 16-bit console, and that’s all I wanted to do. I hope you found it interesting!</p>]]></content><author><name></name></author><category term="16bit" /><category term="info" /><category term="sega" /><category term="technical" /><summary type="html"><![CDATA[I’m bringing out the truth about TMSS! Admit it! Sega never made a game console that can’t play that region’s release of Phantasy Star II, and it’s time to show exactly what that means and why. Let’s dig into the technical nitty-gritty of one of the biggest flops in console licensing history. Spoilers: It’s a little more complicated than you think, at least in Japan.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/segala2/tmss.png" /><media:content medium="image" url="https://nicole.express/assets/img/segala2/tmss.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">You Need a PC for PC Games: Sunsoft’s Shanghai</title><link href="https://nicole.express/2026/the-other-type-of-mahjong.html" rel="alternate" type="text/html" title="You Need a PC for PC Games: Sunsoft’s Shanghai" /><published>2026-05-24T09:38:00-04:00</published><updated>2026-05-24T09:38:00-04:00</updated><id>https://nicole.express/2026/the-other-type-of-mahjong</id><content type="html" xml:base="https://nicole.express/2026/the-other-type-of-mahjong.html"><![CDATA[<p>There’s a problem with my current series on mahjong games– when I say “mahjong”, people in my home country of the United States of America probably don’t think of the 2-4 player competitive game. They think of the single-player tile-matching game, Mahjong Solitaire, also known as <em>Shanghai</em>, beloved of office-workers and casual gamers everywhere. And that’s popular in Japan too; popular enough to get arcade releases. How did Sunsoft bring <em>Shanghai</em> to arcades? Why is that even a question worth asking?</p>

<h2 id="born-on-the-pc">Born on the PC</h2>

<p>The exact origins of the tile-matching game using mahjong tiles are unclear, but making it a video game is usually attributed to Brodie Lockard, who discovered the tile-matching game as he dealt with recovery from an injury that had left him paralyzed, porting it to the PLATO system. But it was the Activision-published 1986 release across computers that really made it a mainstream hit.</p>

<p><img src="/assets/img/shanghaid/shanghai2.png" title="shanghai ][, not to be confused with shanghai 2, which only got a iigs release" alt="Shanghai on the Apple II, the dragon" /></p>

<p><em>Shanghai</em> presents you with an arrangement of mahjong tiles arranged in a multi-level structure. You can remove tiles from the structure, but you have to follow certain rules when doing so: to be removed, they must have an empty space on one side, and nothing on top of them. This is a nice brain teaser, and honestly I’m completely addicted to it.</p>

<p><img src="/assets/img/shanghaid/shanghai22.png" title="I don't like when the directions aren't kanji" alt="Shanghai on the Apple II gameplay. Tiles are stacked" /></p>

<p>Take a look at the 1986 Apple ][ version above. This uses the Apple’s <a href="/2024/phasing-in-and-out-of-existence.html#hires-mode">“HIRES”</a> directly-addressable pixel graphics mode; and while that’s normal for games on this platform, <em>Shanghai</em> pretty much necessitates using the directly-addressable pixel graphics modes whenever possible. Because the problem is that any tile could be on top of any other tile, and they can be on different levels. There’s no tile grid.</p>

<aside><p>An interesting thing to note is that the tiles used in <i>Shanghai</i> don't match those used in Japanese <i>riichi</i> mahjong. Even putting aside the simplified labels used in the Apple release, the game has flower and season tiles, which aren't typically used in <i>riichi</i>, making it closer to Chinese variants of mahjong. (It also lacks the jokers used in American mahjong)</p><p>Given the demographics of English-speaking mahjong players and of people who read this blog, my guess is that among most readers, if they're familiar with any version of the competitive game at all, it's most likely going to be <i>riichi</i>.</p></aside>

<p><img src="/assets/img/shanghaid/nes.png" title="breaking out the rgb blaster" alt="Shanghai on NES. The colors are different, rather than having visually different levels" /></p>

<p>And that’s what makes this game so interesting as a use case for comparing ports. Because while computers of this period generally have directly-addressable graphics modes, game-centric hardware usually did not, and that made this game hard to port. The Famicom port above is particularly pathetic; it uses colors to simulate the layers and tiles are limited to 16x16. It’s actually extremely playable and has catchy music, but it’s highly compromised visually. (Oddly, the <a href="https://www.youtube.com/watch?v=TT39grfv6L0">CGA IBM PC</a> release also used colors instead of levels)</p>

<aside><p>We actually have a <a href="https://tcrf.net/Proto:Shanghai_(NES)">prototype version</a> of this game, which made different compromises. (And was for the FDS, but that might've just been a development artifact) I think the final version turned out better, myself.</p><p><img src="/assets/img/shanghaid/proto.png" title="colorful tiles, but not in the usual way" alt="Shanghai prototype on NES. The background is black and the tiles colors are accents rather than filling them in, but there's still not proper leveling." />
</p></aside>

<p><img src="/assets/img/shanghaid/sms.png" title="i made a terrible mistake early on and decided to just roll with it. it didn't work" alt="a shanghai game on master system. The tiles are big but the player is stuck" /></p>

<p>The Sega Master System version is far superior, with big tiles taking up almost the entire screen. This is because the Master System, while not having directly-addressable pixel modes (other than the legacy mode, used in <em>F-16 Fighting Falcon</em> for exactly this purpose, but thank goodness they didn’t use that), does have video RAM. But it doesn’t actually have <em>enough</em> video ram to tile this whole area. So how’s it doing this? Take a look at the tiles in an emulator like <a href="https://emulicious.net/">Emulicious</a>.</p>

<p><img src="/assets/img/shanghaid/flicker.gif" title="party time" alt="list of the tiles. a few are flickering" /></p>

<p>Certain tiles from the top row of tiles are being redrawn mid-frame so they can fulfill double-duty as also covering the bottom row. You can also see how this game uses the majority of the sprite table in VRAM to act as additional tiles instead; the only sprites used are those that make up the cursor. It seems like such a simple screen, but they’re actually pushing the console here! This port was developed in-house at Sega, usually attributed to the famous Mark Cerny.</p>

<aside><p>The Famicom version of <i>Shanghai II</i> draws properly overlapping tiles. Unfortunately, the Famicom can't rewrite CHR-RAM during active display like the Master System can, so the directly-addressable screen area is more limited in size.</p><p><img src="/assets/img/shanghaid/nes2.png" title="the original feels faster and more responsive, though" alt="Shanghai II on NES. The tiles are smaller but they do overlap properly" />
</p></aside>

<p>It’s not just graphical issues. Look at the video of <em>Shanghai</em> on Famicom below. Notice how long it takes for the game to figure out how many moves the player has remaining. Sure, it’s not more than a few seconds, but that’s a <em>lot</em> of frames. Therefore, this version of <em>Shanghai</em> can’t end your game automatically when you have no moves left. I’ve often complimented the Famicom’s plucky little 1.7MHz almost-6502, but this is a complex combinatorial problem. (It’s a faster CPU than the Apple ][!)</p>

<p><video SRC="/assets/img/shanghaid/calc.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>It’s worth noting, though, that <em>Shanghai II</em>  on the same platform does detect this automatically (though it still takes a few frames to notice), so it’s likely that the original game could’ve done this. This is all just context to let you know that <em>Shanghai</em> is more complex to support than it looks at first glance. We’ve looked at a lot of arcade game hardware here, and it’s almost all tile-based. Tiles are great for video games! But this game required another approach.</p>

<p><img src="/assets/img/koipond/furiten.png" alt="The game warns that the player can not call ron, due to the rule of furiten" title="today, we are all in furiten" /></p>

<p>You might wonder if this is another case where a blitter, like <a href="/2026/more-like-koi-yes-magic-potion.html">Nichibutsu used</a> on almost all their mahjong titles, would be a good fit. After all, it’s very clearly shown that those can copy large mahjong tiles around. Well, maybe it would’ve been. But for their 1988 arcade release, Sunsoft did something else.</p>

<h2 id="advances-in-pc">Advances in PC</h2>

<p>The PCB is large but spacious, festooned with both Sunsoft’s logo and the logo of their parent company, the Sun Corporation of Japan, a Japanese conglomerate that still exists today, owning businesses ranging from the recent Sunsoft revival to, uh, an Israeli phone-hacking firm? Okay then…</p>

<p><img src="/assets/img/shanghaid/bored.jpeg" title="today, you are all in furiten" alt="The PCB of Shanghai" /></p>

<p>In any case, the first interesting thing about this board is the CPU. It’s an 8MHz NEC V30; this is an upgraded version of the Intel 8086, which means it’s a 16-bit CPU with a 16-bit data bus and a 20-bit address bus.</p>

<p><img src="/assets/img/shanghaid/v30.jpeg" title="so many bits" alt="NEC V30 chip" /></p>

<p>Certainly x86 processors are less common than Motorola 68000s in arcade boards of this time, but they’re not unheard of either. In terms of arcade boards that have shown up on this blog, <a href="/2022/panic-at-the-road.html"><em>Panic Road</em></a> used an NEC V30 clone made by Sony. And of course, this also would’ve been a decent CPU for a home computer of the time, though the high-end was leaving it behind by 1988. Pairing it with 16kiB of RAM, though? Extremely stingy. (Yes, yes, code executes from ROM)</p>

<p><img src="/assets/img/panicing/panic.jpg" title="Awfully cute to be panicing" alt="Panic Road title screen, with a Seibu Kaihatsu copyright" /></p>

<p>I’m not certain, but I suspect that Seibu Kaihatsu, who developed <em>Panic Road</em>, may have been involved in the hardware side of things for <em>Shanghai</em>. Admittedly, this is mostly just the use of the V30 CPU, and the fact that Success’ <a href="https://archive.org/details/arcade_kothello"><em>Kyuukyoku no Othello</em></a> used similar hardware, but paired with a Seibu Kaihatsu sound setup, and Seibu Kaihatsu appears to have very frequently did this kind of contract hardware work. (The software is all Sunsoft, as far as I can tell)</p>

<p><img src="/assets/img/shanghaid/ym2203.jpeg" title="Yum! 2203!" alt="YM2203 on the PCB" /></p>

<p>That being said, <em>Shanghai</em> does <em>not</em> use a Seibu Kaihatsu sound system; it hooks up a Yamaha YM2203 FM synthesizer right up to the V30’s IO ports. The four-operator three-voice YM2203 was a constant companion of Japanese arcade games in the 1980’s; we’ve seen it most recently in my post on Taito’s <a href="/2025/pocky-but-wheres-rocky.html"><em>Kiki KaiKai</em></a>, and it was a popular sound expansion option for NEC’s PC98 computer series.</p>

<p><img src="/assets/img/shanghaid/hd63484.jpeg" title="it's a big one" alt="The large many-pinned HD63484" /></p>

<p>The graphics is where this gets particularly interesting. This is the Hitachi HD63484; their answer to the NEC APC’s μPD7220 (which shared a team with the <a href="/2023/tv-luke-i-am-your-tv-vader.html">μPD777</a> we saw in the past with Epoch’s machines). <a href="https://www.computer.org/publications/tech-news/chasing-pixels/gpu-history-hitachi-artc-hd63484">IEEE Computer World</a> notes that in 1988 24% of the PC graphics cards targeting computer-assisted design (CAD) used it.</p>

<p>It was noted for its elegant command-based interface and very high resolution graphics capability; 4096x4096, for a chip released in 1984! (Though at that high resolution, you’re limited to monochrome) Of course, <em>Shanghai</em> is designed for JAMMA, which is limited to “standard definition” video, so you’d never reach that. That mode also required 2MiB of RAM, apparently; here, it’s paired with 256kiB of RAM; this is also the slower 8MHz version.</p>

<p>Indeed, overall the low RAM (and the 15kHz output) is really the main thing separating this from a PC of the time; otherwise, this is a “professional-grade” video setup and CPU. And for what?</p>

<h2 id="shanghai">Shanghai</h2>

<p><img src="/assets/img/shanghaid/title.png" title="pictured: the only thing anyone ever does in shanghai, or so activision WANTS you to believe" alt="Shanghai title screen, showing two Chinese men looking at the tile structure" /></p>

<p>The title screen of <em>Shanghai</em> is the same image that Activision used on the box art for most releases in this time, and was also used in the Famicom support, though this is much higher resolution and pretty good quality. (The kanji characters, 上海, mean “above the sea”, but in this case are likely used because this is the Chinese character rendering of the name of the city of Shanghai)</p>

<p>Before we dig into the gameplay, let’s talk about the video a bit more. I used the Framemeister for this capture, and got some stats from it.</p>

<p><img src="/assets/img/shanghaid/stats.png" title="don't talk about the game don't talk about the game" alt="Input RGB, Dot 720x279p, V: 53.44Hz, Color: RGB Analog" /></p>

<p>You might notice the screen looks slightly cut-off; this makes sense when you notice the Framemeister identifies this as actually running at 53.44Hz and 279p, a very odd video resolution. Weird frequencies like this were more common in the PC space, but weren’t unheard of in the arcade space either. Generally you’d tune your monitor once for a particular board, and that board would stay in place for awhile, so being off was fine. It’s mostly an issue for those of us who want to switch out boards at random and use upscalers; that was never the target market.</p>

<p><img src="/assets/img/shanghaid/compy.jpeg" title="notice the reflection of the board itself" alt="Shanghai running on a CRT" /></p>

<p>My little 9” Trinitron does sync otot the image, but you can see even more of the top of the image was cropped, and my phone completely failed to sync properly to take a good image. Still, in practice I don’t think this is a bit problem. Let’s shift gears from the video signal to talking about something else that is a prediliction of this blog: talking about the difference between arcade games and home computer games!</p>

<h3 id="translating-shanghainese">Translating Shanghainese</h3>

<p><em>Shanghai</em>, as a game, falls into the same category of “patience” games like the classic card game Klondike Solitaire. It’s a single-player game where the main point is just to complete the challenge by moving things about. There isn’t really a <em>loss</em> condition, other than the game becoming impossible. Indeed, Activision’s game usually provides options for reversing moves and finding new moves. (Peeking, on the other hand, usually ends your game) These features are why it’s so much nicer to play <em>Shanghai</em> on a computer rather than building a tower on your table.</p>

<p><img src="/assets/img/shanghaid/cheater.png" title="my wife calls this cheating" alt="Shanghai on Famicom, options menu: BACKUP, RETRY, FIND, PEEK" /></p>

<p>Naturally, this is a great way to sabotage the productivity of office workers. But it’s not a great way to make money in an arcade; obviously, if you could just put in one quarter and play for hours, arcade operators would go and buy someone else’s game instead. It’s a business.</p>

<p><img src="/assets/img/shanghaid/game.png" title="behold" alt="Shanghai gameplay" /></p>

<p>So Sunsoft made some changes. Notice the timer at the bottom of the screen; if you make a pair, the timer replenishes a bit. Being able to “find” is limited to three times; this is what the three sticks labeled “HELP!” are for. Being able to back up is gone entirely. On the other hand, since this was a fairly new game, Japanese text explaining how to play is also added.</p>

<p><img src="/assets/img/shanghaid/dead.png" title="behold, i am bad at games" alt="Shanghai death screen" /></p>

<p>If you run out of possible moves, the game kills you, but gives you the option to restart with the same board. You start from the beginning, though, so I hope your memory’s good. The lack of any sort of single-step backup is I think a weakness of this game. The later Sunsoft arcade title <em>Shanghai: The Great Wall (Shanghai Triple Threat)</em>, which used the <a href="/2021/segasonic-the-saturn.html">Sega ST-V hardware</a>, allows both a selection of three helps and three backups. Otherwise, it follows the basic pattern of this timer-based gameplay very closely, because it actually works pretty well.</p>

<p><img src="/assets/img/shanghaid/stv.png" title="I had no reason to go back at this point, but it was for demonstration" alt="Shanghai on STV, showing the backs" /></p>

<p>There’s another thing that’s kind of odd. In all the versions of <em>Shanghai</em> I’ve discussed here except the arcade one, the mouse cursor moves freely. This is because it’s a mouse cursor, and that’s what they usually do; even when they’re being moved by a controller or something else that isn’t technically a mouse.</p>

<p><img src="/assets/img/shanghaid/snap.png" title="also the game is yelling at me" alt="Shanghai on arcade" /></p>

<p>But for this arcade game, your cursor is snapped; it always moves to be on top of something you can click on. Moving left doesn’t move it left by a small amount, it moves it to the next leftmost element that you can click on (presumably a tile). It’s fine, and maybe was done to speed up play, but I can see why the ST-V sequel does away with it.</p>

<aside><p>I happened to take a look at the <a href="https://www.youtube.com/watch?v=cCWgkFmlzcs">PC98 version</a> of Shanghai to see if it had the same behavior, given that it also uses an x86 CPU, so there could be code-sharing. But it looks to be completely unrelated, with a freely-moving cursor.</p>
<p>Also I realize <i>Shanghai: The Great Wall / Shanghai: Triple Threat</i> isn't the <i>direct</i> sequel to this <i>Shanghai</i> game; there were other arcade Shanghais in between. But at the time of this post, these are the only two I have.</p></aside>

<h2 id="ive-never-even-been-to-china">I’ve never even been to China</h2>

<p>This might sound like I’m being harsh on <em>Shanghai</em>. And maybe I am, so let’s be clear: this is a very fun game, and there’s a reason it kicked off a whole series of Sunsoft arcade games. The timer adds an element of urgency that’s lacking in the original. It’s hardly the first game’s fault Sunsoft refined the formula later on.</p>

<p><img src="/assets/img/shanghaid/clear.png" title="this also got a disc release but I don't have that" alt="Screen clear! in ST-V Shanghai" /></p>

<p>In fact, I always like to go back to the original <em>Shanghai</em> for the simplicity of design; something about just having a single possible layout and a basic set of controls is appealing. And <em>Shanghai</em> for arcade provides that much. The fact that it does so while also being basically a contemporary PC workstation someone stole all the RAM from? That’s just icing on the cake.</p>

<p><img src="/assets/img/shanghaid/select.png" title="I should've captured more footage" alt="Arcade Shanghai with the top tile selected" /></p>]]></content><author><name></name></author><category term="arcade" /><category term="mahjong" /><category term="16bit" /><category term="sunsoft" /><summary type="html"><![CDATA[There’s a problem with my current series on mahjong games– when I say “mahjong”, people in my home country of the United States of America probably don’t think of the 2-4 player competitive game. They think of the single-player tile-matching game, Mahjong Solitaire, also known as Shanghai, beloved of office-workers and casual gamers everywhere. And that’s popular in Japan too; popular enough to get arcade releases. How did Sunsoft bring Shanghai to arcades? Why is that even a question worth asking?]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/shanghaid/dead.png" /><media:content medium="image" url="https://nicole.express/assets/img/shanghaid/dead.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Sprite Scaling on the Master System: Building the New on the Ruins of the Old</title><link href="https://nicole.express/2026/zoom-zoom.html" rel="alternate" type="text/html" title="Sprite Scaling on the Master System: Building the New on the Ruins of the Old" /><published>2026-05-10T12:42:00-04:00</published><updated>2026-05-10T12:42:00-04:00</updated><id>https://nicole.express/2026/zoom-zoom</id><content type="html" xml:base="https://nicole.express/2026/zoom-zoom.html"><![CDATA[<p>Sprite scaling. It is the coolest effect of the 2D arcade era, a must-have for games from <em>Space Harrier</em> to <em>Real Bout Fatal Fury Special</em>. Home consoles pretty much lacked it– sorry, Nintendo, but Mode 7 only scales a background, not sprites. So therefore you might be surprised to hear that Sega’s plucky underdog Master System could do it. Well, don’t get your hopes up; this is far too limited– calling it <em>scaling</em> is overstating things. But let’s dig in anyway!</p>

<h2 id="history">History</h2>

<p>The Sega Master System is the direct descendant of Sega’s first console, the SG-1000. In fact, in Japan it was called the “Mark III”; the third redesign, after the <a href="/2023/sg-1000-is-a-stupid-name-why-is-there-no-sg-500.html">SG-1000 II</a> that ditched the hardwired controller. While Sega was a hardware company, there’s pretty much nothing “Sega” about the original SG-1000 design; it’s made of off-the-shelf parts, pairing a Zilog Z80 with Texas Instruments’ SN74689A sound chip and TMS9918A Video Display Processor (VDP).</p>

<p>And that VDP is the starting point here. It was used pretty much everywhere, from TI’s own TI-99/4A computer, to the ColecoVision, the MSX1, the Nichibutsu My Vision, the Tomy Tutor, the CreatiVision… It just keeps going. The TMS9918A introduced the modern concept of “sprites” to home machines.</p>

<p>TMS9918A sprites could be used in any mode except text mode. They were single color, 8x8 or 16x16 pixels, and you had 32 of them at a time, with only four on each scanline. This might seem very limited, but compared to the player/missile/ball of the <a href="/2023/have-you-read-atari-today.html">Atari 2600</a>, it was a game-changer.</p>

<p>The Atari 2600 had the ability to expand the pixels of its movable objects horizontally (of course, on the Atari, everything was horizontal). And the TMS9918A had that capability too, for both horizontal and vertical; the TMS9918A <a href="https://www.cs.columbia.edu/~sedwards/papers/TMS9918.pdf">datasheet</a> refers to this bit as “MAG”, for magnification. It expands sprites horizontally <em>and</em> vertically. You can see it used here in <em>Champion Boxing</em>.</p>

<p><img src="/assets/img/sg1k2k2/challenge.png" title="in my brain this says challenge next stage, and i can not convince it otherwise" alt="Champion Boxing arcade win screen" /></p>

<p>Now, “MAG” mode is a single bit in a VDP register. It applies to <em>all</em> sprites on screen at any given time; in <em>Champion Boxing</em>, the reason the boxers aren’t scaled is because they’re actually made of background tiles, not sprites. So this wasn’t the most commonly-used effect, but it’s definitely out there.</p>

<p>Why do I talk about this? Because the VDP on the Sega Master System is a direct descendant of the TMS9918A.</p>

<h2 id="the-sega-master-system">The Sega Master System</h2>

<p>The Sega Master System made two major changes to the TMS9918A. The first was that it switched from hard-coded colors to a 6-bit RGB output, producing the infamous compatibility palette I whine about on this blog all the time.</p>

<aside><p>The original Sega Master System and the later variant of the VDP have slightly different output colors; the blue is boosted more than it should be on the original Master System. In practice, saying it's 6-bit RGB is good enough.</p></aside>

<p>But the second was that it added Mode 4. Mode 4 provided a tilemap made out of 8x8 tiles, 16-color palettes, an an entirely rebuilt sprite system. In a very real sense, Mode 4 <em>is</em> the Sega Master System. Every licensed game used it. Yes, even <em>F-16 Fighting Falcon</em>; it just used it on the title screen, though when actually flying the plane it used TMS9918A modes.</p>

<p><img src="/assets/img/bigmaster/f16.png" title="the original F-16 had a 16-bit CPU, so of course sacrifices had to be made bringing it home" alt="F-16 Fighting Falcon title screen, too colorful to be a TMS9918A mode" /></p>

<p>But on the first generation of Master Systems, those that used the Sega 315-5124 VDP (often called “SMS1”), the new mode was built on the ruins of the old. Take, for example, the <a href="https://www.smspower.org/Development/TilemapMirroring">tilemap mirroring</a> bug. An extra bit, which we call the “mask bit”, in the VDP’s Register <code class="language-plaintext highlighter-rouge">0x02</code>, which is supposed to set the high bits of the tilemap address, ends up interferes with the tilemap scanning instead; if you set this bit to <code class="language-plaintext highlighter-rouge">0</code>, then games using the 315-5124 VDP will repeat the top 12 rows of the tilemap over the bottom 12.</p>

<p><img src="/assets/img/bigmaster/ys1.png" title="adol is like 'why can't i be on the turbografx-cd'" alt="Ys gameplay in the first town. The status bar is fine." /></p>

<p>The game <em>Ys</em> relied on this behavior in its Japanese release as part of its status bar. (A full screen status bar in a fixed location at the bottom of the screen is pretty hard on the SMS!) You can see the town looks perfectly normal above, which is on my Japanese Master System. But if I play it on my French Master System 2 instead…</p>

<p><img src="/assets/img/bigmaster/ys2.png" title="there are some minor color differences between the VDPs, but I bet the bigger cause here is the differing cables" alt="Ys gameplay in the first town. The status bar is glitched." /></p>

<p>Thankfully, the translated release of <em>Ys</em> no longer relies on this behavior, and every Master System and Mark III sold in Japan had the 315-5124 VDP, so this wasn’t a real issue in practice for this game.</p>

<p>There are all sorts of strange states you can get the SMS1 VDP into by messing with the registers. We actually have <a href="https://www.smspower.org/Development/OfficialDocumentation">Sega’s official Master System documentation</a>, and you can see how they handled this; they basically just told users to always set or unset certain bits, either explicitly, or by only providing valid values with those bits set. One of those bits was <code class="language-plaintext highlighter-rouge">MAG</code>, which was ordered to be always set to <code class="language-plaintext highlighter-rouge">0</code>.</p>

<h3 id="sega-master-system-sprites">Sega Master System sprites</h3>

<p>Mode 4 sprites are an entirely new system. There are now 64 possible sprites, not 32. Their arrangement in memory is entirely different. There are only three bytes per sprite attribute table entry instead of four. You can have up to eight sprites per scanline, instead of four. Sprites can still be 8x8 pixels, but the 16x16 sprites are replaced by narrower 8x16 sprites.</p>

<aside><p>The fourth byte on the TMS9918A sprite table was used for color selection, and an "early clock bit" that provided a shift in the sprite position to allow sprites to emerge partially from the left side of the screen. In Mode 4, there is only one sprite palette, and the functionality of the "early clock" bit is instead provided globally through a VDP register.</p><p>Sprites on the NES still use four bytes in their attribute table (called "OAM", Object Attribute Memory), and the fourth byte is used for palette select and for horizontal and vertical sprite flipping. Sprite flipping would've been nice to see on the SMS, but hey, the Famicom can't do tile flipping and Sega can, so it was just an early example of Sega doing what Nintendon't.</p></aside>

<p>But on the 315-5124, the new is based on the ruins of the old. It’s fairly clear to me that Sega or Yamaha’s hardware designers didn’t actually intend for sprite magnification to be a feature of the VDP. But the sprite systems aren’t independent, either. We already know that– the “mask bit” applies to the sprite table register as well. But I don’t know of any games that rely on it; because of the way the memory is laid out, it just limits how many tiles you can use for sprites, which is pointless.</p>

<aside><p>I suppose this could be used to detect an SMS1 or SMS2 VDP. But we haven't gotten to the SMS2 VDP yet.</p></aside>

<p>So the sprite magnification bit <em>does</em> work on the SMS1. But there are a few heavy conditions.</p>

<p>First off, only four sprites can be magnified in both directions. Take a look at this dialogue scene from a game I’m working on. Notice that Ava is made up of magnified sprites. But there’s only one character on screen. Ava is made up of magnified 8x16 sprites.</p>

<p><img src="/assets/img/bigmaster/ava1.png" title="ava's got a spiffy blazer, what could it mean" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. The text says 'AVA: I don't think I like where this is going...' in a variable-width font" /></p>

<p>But also, there’s something you <em>can’t</em> see here. Even though Ava is only made up of four sprites per scanline, there are four more sprites on each scanline. They’re just invisible and off-screen. Why would I do that? Do I just like being wasteful? Well, clearly yes, but that’s not relevant here. Because if I don’t have the placeholder sprites, I get this:</p>

<p><img src="/assets/img/bigmaster/stripava.png" title="ok i guess it was bad" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. Ava consists of horizontal strips. The text says 'AVA: AHHHHHHHHHH' in a variable-width font" /></p>

<p>The 315-5124 VDP can in fact scale <em>eight</em> sprites per scanline, but only vertically. Horizontally, only the first N-4 out of N sprites on the scanline will be stretched. For example, if I only put two placeholder sprites, I only get two horizontally scaled sprites.</p>

<p><img src="/assets/img/bigmaster/sliceava.png" title="slicing a few strips off of ava" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. Ava has two horizontal strips and two properly zoomed sprites. The text says 'AVA: AHHHHHHHHHH' in a variable-width font" /></p>

<p>This is kind of a pain to deal with, which is probably why there are no commercial games designed for the 315-5124-capable systems that use sprite scaling. It does create some funky effects, though.</p>

<h2 id="the-bare-minimum-on-the-genesis">The bare minimum on the Genesis</h2>

<p>Sega, in their magnificent wisdom, seems to have completely reimplemented the Master System’s Mode 4 at least twice. The first was for the 1988 Sega Mega Drive, known as the Genesis by me. We’ve already seen a <a href="/2021/alf-2-alf-harder.html">strange bug</a> in the Genesis’ Mode 4 that <em>ALF</em> triggered, but at least in that case, the Genesis VDP also has the capability of sprite collision detections in Genesis mode (“Mode 5”) as well.</p>

<p>Essentially every feature that wasn’t used in Genesis mode is gone in the compatibility Mode 4. While the 315-5124 was built on the ruins of the past, Genesis compatibility is built on the ruins of the <em>future</em>. The TMS9918A modes are gone (sorry, <em>F-16 Fighting Falcon</em>), and the mask bit issues they brought with them are gone too– so this is the one case Japanese users had to run into the bug in <em>Ys</em>.</p>

<p>Magnified sprites on the 315-5124 were a leftover from the TMS9918A, and they’re gone too. For these tests, we’ll be running on my Sega CDX. The Power Base Converter does fit just fine on this, though it looks kind of weird.</p>

<p><img src="/assets/img/bigmaster/mushroom.jpeg" title="some sort of parasitic mushroom has colonized my CDX, help" alt="The Power Base Converter on the CDX. It is wider and longer, and the power light isn't where it says it is, but it does technically fit." /></p>

<p>If I run my same program from earlier, no matter how many placeholder sprites I have, Ava just explodes.</p>

<p><img src="/assets/img/bigmaster/ava3.png" title="omae wa mou shindeiru" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. Ava is broken into 8x16 pieces. The text says 'AVA: AHHHHHHHHHH' in a variable-width font" /></p>

<p><em>F-16 Fighting Falcon</em> also doesn’t run, but the title screen works, and few genres have aged as badly as outdated flight simulators anyway. I also don’t have two Master System controllers anyway…</p>

<p><img src="/assets/img/bigmaster/f162.png" title="if I had used the screenshot from above, would anyone have noticed?" alt="F-16 Fighting Falcon title screen, too colorful to be a TMS9918A mode" /></p>

<p>Interestingly, apparently Master System games can trigger Mode 5 by toggling an appropriate bit in the VDP status. I have no idea why anyone would do this, unless you have a grudge against the 68000 and the YM2612 or something, and of course no commercial games did.</p>

<h2 id="a-coherent-whole">A coherent whole</h2>

<p>After the Mega Drive, Sega released a cost-reduced model of the Master System, generally called the Master System 2. (But it was the Master System 3 in Brazil) That used, for some reason, a rearchitected VDP, the 315-5246.</p>

<aside><p>Apparently, there is the rare original-style Master System that uses the 315-5246, and possibly vice-versa as well. However, referring to the two VDPs as "SMS1" and "SMS2" is, as I noted, the standard notation.</p><p>Other than the <a href="/2021/adapteur-i-hardly-know-eur.html">French model</a>, all SMS2s were RF-only, so finding an original Master System with the newer VDP could be quite convenient.</p></aside>

<p>Why did they redesign the VDP? I’m not sure, but my suspicion would be that it was because of the Game Gear, which released in 1990 in Japan and 1991 in North America and Europe. The Game Gear is <a href="https://nicole.express/2022/sega-8-bit-conversion-kit.html">based on the Master System</a>, but has a new mode with a lower resolution and higher color resolution, along with outputting a signal for an LCD rather than a CRT TV.</p>

<p>Whether the 315-5246 is derived from Game Gear work or not (if we had die shots, that might make it clear), it’s clear that it is a new design. Whereas the original SMS VDP was built on the ruins of the past, and the Genesis VDP provided the bare minimum for compatibility, the SMS2 seems to have been designed as a coherent whole. Backwards compatibility with the TMS9918A is still provided in the same colors, which makes me wonder if a Japanese release was planned.</p>

<aside><p>The backwards compatibility modes on the Game Gear do not use the compatibility palette! Instead, they rely on the games themselves to provide a palette in CRAM, just like Mode 4 games have to. This in theory makes them more flexible, but in practice there's no real reason to use them, and it breaks direct compatibility. Flashcarts can set the palette in advance, though.</p></aside>

<p>A particularly odd choice on the 315-5246 is that it provides two new graphics modes; 224-line and 240-line variants of Mode 4. (Original Mode 4 is 192-lines, same as the TMS9918A) These have slightly different sprite behavior, and 240-line mode doesn’t work in NTSC or on the Game Gear. In Europe, the SMS2 was by far the most common model, and Codemasters actually used the 224-line mode in some games, like <em>Micro Machines</em>. You can see how my SMS1 can’t handle their absolute brilliance.</p>

<p><video SRC="/assets/img/bigmaster/code.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>Interestingly, it works a little better on the Genesis, and I can get into the game. Where the scrolling is all screwed up, because the Genesis <em>also</em> doesn’t support the 224-line or 240-line modes. (Being an NTSC console probably doesn’t help either) It’s just interpreting all the calls for the usual 192-line mode, and that’s close enough to mostly work on a good day.</p>

<p><img src="/assets/img/bigmaster/micro.png" title="my machine, she is so micro" alt="Micro Machines hoverboat with weird scrolling" /></p>

<p><strong>UPDATE 3/16/2026</strong>: <a href="https://bsky.app/profile/sikthehedgehog.bsky.social/post/3mlyfk3wmpc2p">Sik</a> on Bluesky speculates that this redesign might’ve been to enable usage of the SMS VDP as an overlay for the arcade Mega-Tech and Mega-Play systems; the 224 and 240 line modes share timing with similar modes on the Genesis, allowing one screen to overlay the other for when those arcade boards were used in a single-monitor setup.</p>

<p>But we’re here to talk about sprite scaling. And I’m glad to say that the SMS2 just supports sprite magnification the same way everywhere, treating it as an actual feature of the sprites. All sprites are properly doubled in size. Since all Game Gears use a similar VDP, while Sega’s official documentation for the Game Gear still says not to use it, some games did anyway, like <em>X-Men</em> on the title screen.</p>

<p><img src="/assets/img/minimaster/xmen-sms2.jpg" title="want to know how I'm running a game gear game directly on my master system? read the other blog post" alt="X-Men title screen with double-sized sprites rising behind the titular team." /></p>

<p>Most emulators seem to replicate the Master System 2’s behavior. Sometimes they’ll do both, with double-sized sprites acting like the 315-5246, while also having the older mask bit behavior to make <em>Ys</em> work. And of course, even with no placeholder sprites, Ava shows up just fine.</p>

<p><img src="/assets/img/bigmaster/ava2.png" title="dunno what her problem is" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. Ava is screaming, but her sprite is fine. The text says 'AVA: AHHHHHHHHHH' in a variable-width font" /></p>

<h2 id="as-a-developer">As a developer…</h2>

<p>What does this mean for the homebrew developer? Well, the easiest option is what essentially all commercial game developers for the console did: don’t use TMS9918A modes, and don’t use sprite magnification. Mode 4 is good enough. Zoomed sprites are weird anyway, what with having different sized pixels and all.</p>

<p>Know your market. The 315-5246 was more common in Europe, but the 315-5124 was more common in America as far as I can tell, and pretty much universal in Japan. The Genesis in all its forms is way more common than either, and so a lot of modern homebrew players will be using that to play Master System games too, so you probably don’t want to leave them out. (Similarly, make sure you support the Genesis controller, even if you don’t use the extra buttons) Well, not the Genesis 3.</p>

<p>What am <em>I</em> doing? I’m so glad you asked!</p>

<p>When the game boots up, I detect whether zoomed sprites are supported at all by doing a simple test. Two sprites are set up so they will overlap if zoomed sprites are supported, and if they’re not, they won’t. This works perfectly; the Genesis still supports the collision bit, and I know how to avoid the <em>ALF</em> bug. This is very quick and the screen is blacked out while it happens, so you don’t see anything.</p>

<p>On both Master Systems, I just treat it like it’s using the older 315-5124 VDP. The placeholder sprites don’t do any damage on the SMS2. While this means I can only have one character on screen at a time, it also means that I can use the full sprite palette for one character, which is a fair tradeoff in my book, as it means I can reuse sprites from <a href="/2020/space-ava-201-release.html"><em>Space Ava 201</em></a> more easily.</p>

<p>What about the Genesis? Well, players there will get to see a full sprite as well. Sorcery? No, just using the full eight sprites, and including a pre-doubled fallback image in the ROM.</p>

<p><img src="/assets/img/bigmaster/ava4.png" title="technically, this could be higher resolution, but then i'd have to draw at a higher resolution" alt="A zoomed sprite of Ava (from Space Ava) on top of a non-zoomed background. Ava is screaming, but her sprite is fine. The text says 'AVA: AHHHHHHHHHH' in a variable-width font" /></p>

<p>This takes four times as much VRAM. So what’s the point? Well, on the Master System, I can use that for four frames of animation. Master System players get a slightly better experience, but the game is still playable on Genesis.</p>

<p>…That being said, there is a possible alternative I’m toying with. The Genesis should be able write to VRAM at the full speed of the Z80 during active display (as long as you don’t saturate the FIFO buffer); the Master System VDP in either of its forms can’t. So it’s possible that I might be able to get away with animation by just constantly writing the new frames to VRAM. I’d have to store many more pre-doubled frames in the ROM, though, so even with compression this would be a bit painful, and the doubled-sprites are very large. Maybe I could do some diffing logic as well? My animations are pretty simplistic. Right now it’s not a priority, but watch this space.</p>]]></content><author><name></name></author><category term="games" /><category term="8bit" /><category term="sega" /><summary type="html"><![CDATA[Sprite scaling. It is the coolest effect of the 2D arcade era, a must-have for games from Space Harrier to Real Bout Fatal Fury Special. Home consoles pretty much lacked it– sorry, Nintendo, but Mode 7 only scales a background, not sprites. So therefore you might be surprised to hear that Sega’s plucky underdog Master System could do it. Well, don’t get your hopes up; this is far too limited– calling it scaling is overstating things. But let’s dig in anyway!]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/bigmaster/stripava.png" /><media:content medium="image" url="https://nicole.express/assets/img/bigmaster/stripava.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Blitting the Night Away: Nichibutsu’s Mahjong Koi no Magic Potion</title><link href="https://nicole.express/2026/more-like-koi-yes-magic-potion.html" rel="alternate" type="text/html" title="Blitting the Night Away: Nichibutsu’s Mahjong Koi no Magic Potion" /><published>2026-04-26T08:46:00-04:00</published><updated>2026-04-26T08:46:00-04:00</updated><id>https://nicole.express/2026/more-like-koi-yes-magic-potion</id><content type="html" xml:base="https://nicole.express/2026/more-like-koi-yes-magic-potion.html"><![CDATA[<p>Imagine, if you will, a young man. So desperate for a cure for his disease, that he seeks out a time machine to travel to a future where a cure might exist. But whenever he approaches someone, they insist on playing the tile game mahjong, and for some reason the women start interrogating him about their bodies as they take off their clothes. Will he ever find his cure? This is the story of <em>Mahjong Koi no Magic Potion</em>. No, really.</p>

<h2 id="top-of-the-industry">Top of the Industry</h2>

<p>There were a lot of companies that did strip mahjong. <a href="/2026/put-your-clothes-back-on.html">Mitchell</a>, <a href="/2026/spooky-ghost-stories.html">Jaleco</a>, Seta, Toaplan, Capcom, Psikyo, nearly everyone at least gave it a dabble. But the one company above them all is the one who came up with the whole idea, Nichibutsu. Nichibutsu wasn’t just the first company and the last company in the arcade strip mahjong business, they were almost certainly the most prolific. Like seriously, they made a <em>ton</em> of these.</p>

<p><img src="/assets/img/koipond/pcb.jpeg" alt="Nichibutsu PCB" title="my wife looked at this and wondered why they were using a grid layout with that many surface-mount chips" /></p>

<aside><p>Nichibutsu used a bunch of different brand names for their strip mahjong games. In 1992, they seemed to use "Nichibutsu" for their tamer games (like this one), and other brand names like "Sphinx" and "Fujic" for their spicier games that used real digitized photographs or even LaserDiscs.</p><p>Nichibutsu itself is short for "Nihon Bussan", which basically just means "Japanese Products". Everybody loves products.</p></aside>

<p>And today’s game is a perfect example of Nichibutsu’s arcade mahjong hardware. None of them have names; <em>Koi no Magic Potion</em> was released in 1992, and MAME groups Nichibutsu games between 1991 and 1995 into a single driver in MAME, but that seems to be a MAME thing. Overall this hardware just seems to have been tweaked and changed over time without regard for creating a single family. This was hardware made <em>en masse</em> for games with a short shelf life.</p>

<p><img src="/assets/img/koipond/cpu.jpeg" alt="A surface-mount CPU and a through-hole ROM" title="too many pins" /></p>

<p>For CPU power, <em>Mahjong Koi no Magic Potion</em> uses two Toshiba TMPZ84C011 CPUs. The TMPZ84C011 is a surface-mount, CMOS version of the famous Zilog Z80, and the C011 means that Toshiba included a few I/O ports built-in. To the internal CPU core, these are mapped to some of the Z80’s existing I/O port, so from a programmer’s perspective, the TMPZ84C011 is just a Z80. You might compare it to the Commodore 64’s 6510 CPU, which adds an I/O port to the famous 6502.</p>

<aside><p>I kept calling this CPU the "Z84" in discussions, but that confused people, because the TMPZ84C00 is just a CMOS Z80 (hey now the Z84 on <a href="/2025/sorcers-on-strike.html"><i>Sorcer Striker</i></a> makes more sense), the TMPZ84C015 (used by arcade mahjong specialist Dynax) has different stuff taped to it, etc. So the full part code does matter here.</p></aside>

<h3 id="sound">Sound</h3>

<p>The first of those Z84C011’s, running at apparently a whopping 8MHz, handles the sound. A Z80 (~ish) for a sound CPU is nothing new in 1992, and neither is what it’s hooked up to: a YM3812 “OPL2” FM synthesizer, a two-operator chip.</p>

<p><img src="/assets/img/koipond/sound.jpeg" alt="A bunch of chips, including a YM3812" title="a GAL is a chip for girls" /></p>

<p>This is an interesting one because I think the YM3812 might be more nostalgic in the west, as it was used in the Ad Lib and Sound Blaster cards for the IBM PC, while the PC98 sound cards usually preferred four-operator synthesizer chips like the YM2608 “OPNA”. Here’s a clip of music from <em>Mahjong Koi no Magic Potion</em>’s attract mode. That twangy sound wouldn’t be out of place in a 1992 MS-DOS game! (Though either my capture or the sound filter circuit don’t sound great on those drums; probably my capture)</p>

<p><video SRC="/assets/img/koipond/music.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>For sound effects, two of the Z84C011’s I/O ports are used as 8-bit outputs that can drive basic 8-bit DACs. This might takes up almost all of the CPU time, but that doesn’t really matter at all, because this is a dedicated sound CPU. The sound effects sound… fine. All of the sound samples and music data are contained in a single 128kiB ROM.</p>

<aside><p>For comparison, the game ROM is only 64kiB. That's not even one mega power, for a 1992 arcade game!</p></aside>

<h3 id="video">Video</h3>

<p>Consider the technical requirements. Nichibutsu was making mahjong and hanafuda games. They had short shelf-lives, so they had to be as cheap as possible. Nichibutsu’s non-mahjong arcade business was in steep decline as they moved to consoles (for example, 1992’s <em>Terra Cresta II</em> was a PC Engine exclusive), so they didn’t reuse hardware from that. Card or tile games, on the other hand, don’t rely very much on needing to move a lot of objects around the screen. Having larger, detailed objects is more valuable.</p>

<p>So Nichibutsu went with the blitter. Amusingly, the main example of a 2D blitter-based arcade hardware on this blog has been the <a href="/2022/games-made-in-a-cave.html">CAVE CV-1000</a>, which was specifically made to move a lot of objects around on the screen to accommodate bullet hell shooters. But that’s what ten years will do for you; as well as a 133MHz SH-3 on the CAVE vs. our main CPU, a 6MHz Z80-with-stuff-duct-taped-to-it.</p>

<p>As a quick summary, blitter hardware generally works as follows: a dedicated area of RAM, the <strong>framebuffer</strong>, is used to directly render the screen. (The Nichibutsu system is paletted) This part is similar to other directly-addressable-pixel systems, like the <a href="/2024/phasing-in-and-out-of-existence.html">Apple ][’s HIRES mode</a>. The <strong>blitter</strong>, however, is dedicated hardware that can receive commands from the CPU, which will cause it to copy blocks of data directly into the framebuffer. It is optimized for the graphics usecase, which involves rows that may need to be shifted or with transparency.</p>

<p><img src="/assets/img/koipond/twolayer.jpeg" alt="Two large surface mount chips" title="two-in-a-row" /></p>

<p>I’m pretty sure these surface-mount NB9010 chips are associated with the frame-buffers, and the <em>Koi no Magic Potion</em> hardware features two of them. That means two framebuffers overlaid on each other; since these also have hardware scrolling registers, this can be used to have a single moving object, or just the usual use, two layers on top of each other. (Plus, you can do linescrolling effects, like in the title screen video above) The CAVE CV-1000 hardware doesn’t have this capability, and I’ve also not noticed slowdown in a Nichibutsu mahjong game. Clearly this is much more advanced.</p>

<p><img src="/assets/img/koipond/over.png" alt="game over screen" title="the game over screen is the time machine controls, but you go to it even before you get the time machine, PLOTHOLE" /></p>

<p>The pixels on the Nichibutsu hardware are very much not square; in fact, at a 240p row being 640 pixels wide, they’re essentially halved horizontally. Color palettes are 12-bit RGB, which is nothing special in 1992, but good enough to show a pretty girl.</p>

<p><img src="/assets/img/koipond/pretty.png" alt="A pretty girl in a pink out" title="is this less safe for work than a typical nicole blog post? i did have some spicy things back in the system 1 but it's been awhile... well, you clicked on a strip mahjong post i don't know what you expect" /></p>

<p>One thing worth noting is that <a href="https://blog.system11.org/?p=2200">the System11 blog</a> has observed color fringing in some Nichibutsu mahjong games from 1989-1990 as a result of using 74LS-chips that are just a little too slow for the job. It looks like by 1992 they had fixed this, since I don’t see any equivalent here; it looks to me like this hardware was constantly being iterated on over time. As an aside, if you like strip mahjong hardware, check out the system11 blog.</p>

<h2 id="koi-no-magic-potion">Koi? No, Magic Potion!</h2>

<p><img src="/assets/img/koipond/title.png" alt="Mahjong Koi no Magic Potion title screen" title="i have no idea why sometimes it's written マージャン and sometimes it's written 麻雀" /></p>

<p>So, what is <em>Mahjong Koi no Magic Potion</em>? The title means “Magic Potion of Love”, but I think that choice was made for a simple reason unrelated to the game. Specifically, it’s hard to ignore the popular 1991 song <a href="https://www.youtube.com/watch?v=a0CSCr7ZFrQ"><em>Koi no Magic Potion</em></a>. (Or, uh “Koi no Magic Portion”. My Japanese is terrible I can’t talk…) Nichibutsu was definitely not above a few pop culture references to get attention in a crowded arcade, but I don’t think the game has very much to do with the song.</p>

<p><img src="/assets/img/koipond/title1.png" alt="A white screen with red text" title="But there was nothing can be done" /></p>

<p>The doctor gives you the bad news in the attract mode: your disease is incurable. And maybe they could make a cure, but you won’t live long enough for them to develop it. But then on TV, you find out that a scientist has built a time machine… That’s the magic potion you’re looking for; thankfully, in the future we’ve decided that yes, we should put medical cures in big scientific potion flasks.</p>

<p><img src="/assets/img/koipond/title2.png" alt="The doctor gives you the bad news" title="*nicole who's only played phantasy star 2* getting a lot of phantasy star 2 vibes from the presentation here" /></p>

<p>As for the stripping? (That’s what you’re all here for) We know that in 1992 Nichibutsu left JAMMA because they didn’t want to follow restrictions that resulted in <a href="/2026/put-your-clothes-back-on.html">Mitchell</a> putting out a game that became known as “strip mahjong without stripping”. <em>Mahjong Koi no Magic Potion</em>, though, is honestly to my eyes less sexual than <em>Mirage Youjuu Mahjongden</em>. Yeah, there’s girls in their underwear, but they seem to be enjoying themselves throughout, which is what I think Mitchell’s game used for its edge. Also there’s no giant tongues. You don’t even get to see a nipple.</p>

<p><img src="/assets/img/koipond/nurse.png" alt="A girl in a white bra with a smile" title="she's happy about it it's all good" /></p>

<h3 id="gameplay">Gameplay</h3>

<p><img src="/assets/img/koipond/hi.png" alt="A mahjong game. The girl's face is big" title="possibly bigger than her IRL face on the typical big-screen mahjong candy cab of the 90's" /></p>

<p><em>Mahjong Koi no Magic Potion</em> is a mahjong game. You play a two-player variant of Japanese <em>riichi</em> mahjong. In fact, the gameplay is subtly simplified here. Notice that on screen, the girl’s face is huge, taking up a lot of the game. Like <em>Mirage Youjuu Mahjongden</em>, your opponent doesn’t have points, per se; instead, a love percentage ticks up. Once it reaches 100%, you win, which generally takes three rounds.</p>

<p><img src="/assets/img/koipond/loser.png" alt="The screen is scrolled up to show the opponent's hand" title="yeah yeah i deserve this" /></p>

<p>But you might notice something is missing: the opponent’s hand. You’ll only have the game scroll up to show you it if you lose. Now, they’re still discarding tiles, and you can call those tiles, but as far as I can tell, your opponent will never make a <em>chii</em>, <em>pon</em>, or <em>kan</em> call. That makes this mahjong engine less advanced than 1989’s <a href="/2026/spooky-ghost-stories.html"><em>Mahjong Daireikai</em></a>. Your opponent will always have a closed hand, and usually will call <em>riichi</em>, though not always.</p>

<p><img src="/assets/img/koipond/furiten.png" alt="The game warns that the player can not call ron, due to the rule of furiten" title="majsoul spoiled me" /></p>

<p>Mind you, the game is still good enough to know the rule of <em>furiten</em>, so don’t think you can play too lazily.</p>

<p><img src="/assets/img/koipond/big.png" alt="The girl proceeds to win a reach, closed chinitsu, sanankou and sanrenkou, the last being a local yaku, to get a dealer sanbaiman and annihilate me with 36000 points" title="I was feeling pretty good after winning a mangan and the very next round the game hits me with this" /></p>

<p>So, how do they beat you? Obviously, they just get massively favorable hands at a rate higher than would be expected from random chance. Also, check out something else there: mahjong fans will notice that 三連刻, <em>sanrenkou</em>, is not a common yaku in <em>riichi</em> mahjong. It’s a relatively rare local yaku, which my opponent wields regardless. I’m not sure if this was considered a standard yaku in 1992.</p>

<p><img src="/assets/img/koipond/quiz.png" alt="A girl asks you a question" title="wait weren't we talking on the street, why are you in bed now" /></p>

<p>If you do manage to win a round against a girl, you get the obligatory stripping scenes. The game makes an effort to add some gameplay with quiz questions during the stripping scenes. These questions, like “which breast do I have a mole on”, “am I holding a pillow or a stuffed animal”, “what has baggins got in his pocketses”, etc. don’t seem to really be predictable in advance. They kind of remind me of the ZZT game <a href="https://archive.org/details/zzt_parell1"><em>Parell Wars 1</em></a>, which came out seven years later and features a scene wherein you are asked a password at the bank and are given two options, with no clue to guess which is right.</p>

<p><img src="/assets/img/koipond/zzt.png" alt="Parell Wars 1 for ZZT. You are asked for a password and given options 'a' and 'b'." title="funny the things that stick with you" /></p>

<p><em>Parell Wars 1</em>, in true ZZT fashion, kills you if you get the question wrong; <em>Mahjong Koi no Magic Potion</em> just removes a few percent from your love meter. However, if you get too many wrong you’ll end up having to play one more round of mahjong against the same girl rather than getting to see her final picture or advance the plot.</p>

<aside><p>I don't actually recommend <i>Parell Wars 1</i>, which seems to be the product of a small child deciding to copy <i>Chrono Wars</i>. Seems to be. Is hypothetically.</p></aside>

<p><img src="/assets/img/koipond/item.png" alt="Item option at the start of the game" title="too lazy to use a later item shot" /></p>

<p>Cheat items in <em>Mahjong Koi no Magic Potion</em> work similarly to <em>Mahjong Daireikai</em> in that you gain points for each <em>han</em> you score in a hand that you can spend on them. Unlike <em>Daireikai</em>, you can reuse the items; each <strong>use</strong> is what costs points, but you have the ability to choose whether or not to use an item right when you need to. For example, you’ll have the option to use an item that lets you see what the opponent’s <em>riichi</em> wait is when your opponent calls <em>riichi</em>.</p>

<p><img src="/assets/img/koipond/gift.png" alt="A woman gives you an item" title="so what are these items, in reality" /></p>

<p>Oddly, these items are given out or powered up over the course of the story, so you start out having to play regular mahjong, with only the additional option to switch out tiles you don’t want in your initial hand, a gift from the first girl in the game. (Something so common in video mahjong, “BET” games often give you it for free) I won’t give away too much here, but you do get access to the time machine, and get to go to the future. Thankfully, it’s pretty similar to the present. In fact, I suspect this image is a digitization on top of a photo of an actual place, though I’m not sure where.</p>

<p><img src="/assets/img/koipond/where.png" alt="A choice between three girls in a modern plaza" title="be neat to see if it looks similar today" /></p>

<p><em>Mahjong Koi no Magic Potion</em> also features multiple endings, but I’m not quite sure how to trigger them. There are two full playthroughs of the game on YouTube, one gets the <a href="https://www.youtube.com/watch?v=6gAsroFF8YA">good ending</a>, one gets the <a href="https://www.youtube.com/watch?v=P5cABkh2LK0">bad ending</a> and I don’t know why. Maybe depending on how you treat the scientist? You do get to play against him, but he won’t strip.</p>

<p><img src="/assets/img/koipond/scientist.png" alt="Mahjong against the scientist" title="can you at least take off those stupid glasses" /></p>

<p>Note that I do know which one is good or bad; <em>Mahjong Koi no Magic Potion</em> has a full suite of debug features accessed by dip switches, including an ending select.</p>

<p><img src="/assets/img/koipond/ends.png" alt="ENDING TEST MODE A. HAPPY ENDING B. BAD ENDING" title="bad ending is, of all things, dragon tf. look don't blame me for spoiling things" /></p>

<p>Another fun thing in the debug mode is when you go into an option that requires which girl to look at, you’ll see two “JAMA GAL”. Who are these? Are they the incarnation of JAMMA in female form?</p>

<p><img src="/assets/img/koipond/gal.png" alt="GAL SHOUKAI TEST MODE" title="bad ending is, of all things, dragon tf. look don't blame me for spoiling things" /></p>

<p>No. JAMA is a transcription of 邪魔, which just means “a bother”. These two girls are the incorrect option when you choose one of three girls in the future; you still play a round of mahjong with them, but they won’t strip. You do get smiley-face points for your <em>han</em> if you win, but you will also lose your credit if you lose, so they mostly just serve to lengthen the game and annoy you, and even Nichibutsu recognized that.</p>

<h2 id="drink-the-potion">Drink the potion</h2>

<p>First off, I’d like to thank the flyer for some beautiful close-up CRT pixels. Yep, people in the 90’s knew those looked good too, even when they were just the normal way to see pixels. Also they were easier than having additional art. Click on it for my full 1200dpi scan, 26MiB of CRT glory. Don’t you all do it, though, I pay for my own bandwidth. (Also I just noticed now my scanner cropped off the top, why did it do that, rude)</p>

<p><a href="/assets/img/koipond/flyer_big.jpg"><img src="/assets/img/koipond/flyer.jpg" alt="The flyer of Koi no Magic Potion" title="'The Ending Will Change Based off of the Player's Actions' yeah fuck you too" /></a></p>

<p><em>Mahjong Koi no Magic Potion</em> is the most fun I’ve had with a strip mahjong game. However, the game is pretty much entirely forgotten; I couldn’t find any sources of any worth in Japanese. Which makes sense; as I noted, these games were made in bulk and swapped out fast. Would I call it a hidden gem? I mean, it’s still a strip mahjong game, whose mahjong engine is simple even by genre standards. But I guess the light-hearted plot and pleasant art swept me up.</p>

<p>All of Nichibutsu’s game rights now belong to Hamster Corporation, so I assume that includes <em>Mahjong Koi no Magic Potion</em>. Other mahjong series, like Jaleco’s <em>Idol Janshi Suchie-Pai</em> and Seta’s <em>Super Real Mahjong</em>, have gotten modern compilation re-releases, but nothing of the sort exists for Nichibutsu’s arcade-exclusive titles, and they’re obscure enough that I’d be surprised if that changes. So for now, MAME or this PCB are the best way to play them. Or just watch a video. There isn’t <em>that</em> much gameplay.</p>

<p><img src="/assets/img/koipond/bye.png" alt="The time machine departs with a wavy effect" title="cya suckers i'm off to the future" /></p>]]></content><author><name></name></author><category term="arcade" /><category term="mahjong" /><category term="8bit" /><summary type="html"><![CDATA[Imagine, if you will, a young man. So desperate for a cure for his disease, that he seeks out a time machine to travel to a future where a cure might exist. But whenever he approaches someone, they insist on playing the tile game mahjong, and for some reason the women start interrogating him about their bodies as they take off their clothes. Will he ever find his cure? This is the story of Mahjong Koi no Magic Potion. No, really.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/koipond/flye.jpg" /><media:content medium="image" url="https://nicole.express/assets/img/koipond/flye.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">The OSSC Pro Legacy AV Expansion, now with RF</title><link href="https://nicole.express/2026/a-legacy-of-radio-frequency.html" rel="alternate" type="text/html" title="The OSSC Pro Legacy AV Expansion, now with RF" /><published>2026-04-12T09:32:00-04:00</published><updated>2026-04-12T09:32:00-04:00</updated><id>https://nicole.express/2026/a-legacy-of-radio-frequency</id><content type="html" xml:base="https://nicole.express/2026/a-legacy-of-radio-frequency.html"><![CDATA[<p>There is a major issue with video game consoles and even some computers prior to about, say, 1985 or so; nearly all of them lacked even composite video outputs and required RF. This is a huge pain; <a href="/2024/super-duper-rainbow-pong.html">composite mods</a> require effort and reverse-engineering, while RF demodulation usually relies on old machines as modern demodulators can be questionable at best. And now, finally, we have what promises to be an enthusiast-grade solution: the OSSC Pro Legacy AV expansion, now with RF input.</p>

<p><strong>DISCLOSURE</strong>: I was given the expansion for free, though I did pay for the OSSC Pro myself (quite awhile ago, in fact). Therefore, you should take everything with a grain of salt: believe my factual conclusions, but question any of my subjective opinions.</p>

<h2 id="the-device">The device</h2>

<p>I didn’t get the prior Legacy AV expansion because I already had a Koryuu, which does a similar transcoding of composite and S-Video. That being said, the Legacy AV is a lot nicer than the Koryuu; it shares a power supply, and doesn’t take up your component inputs. (I had gotten the Koryuu for an original OSSC at first, which doesn’t have the expansion port)</p>

<p><img src="/assets/img/legacy/inputs.jpeg" title="wow" alt="Three inputs on an open PCB" /></p>

<p>The Legacy AV has three inputs on the rear. (I would’ve preferred on the front, but I think for people who switch devices less than me this is probably better.) Composite, S-Video, and RF, here represented by the coaxial F-connector common in North America. Notice that I have an exposed PCB here with no case.</p>

<p>One downside of the Legacy AV connector is that it’s not actually a legacy <em>AV</em> connector at all; the audio goes through the existing inputs. That can be pretty annoying, but it does save complexity. In any case, after updating my OSSC Pro’s firmware, getting started with composite video is pretty easy</p>

<p><img src="/assets/img/legacy/nes.png" title="the best version of shanghai? not graphically, but it's incredibly playable and the music is catchy" alt="Famicom Shanghai overlaid with video information" /></p>

<p>Oddly, in the default line-doubler mode, while my screen synced to the Famicom’s signal fine, I did need to switch to scaler mode to be able to capture the video with my external capture box. I didn’t need to do this for the Koryuu; odd, because this is just my usual Famicom; with some non-standard <a href="/2022/what-does-the-nes-say.html">audio mods</a> but a pretty normal video. By default, the signal has a bit less color vibrancy than composite video does on the Framemeister, but I assume adjusting the picture could help. There are a lot more options here than the Koryuu!</p>

<p><img src="/assets/img/legacy/spoilers.png" title="spoilers for the next section" alt="Atari 130XE running Pitfall II with a host of video options shown, including NTSC Pedestal, Brightness, Contrast, and others" /></p>

<h3 id="have-we-played-atari-today">Have we played Atari today?</h3>

<p>For a little more fun, and to start trying out the RF mode, I decided to break out the <a href="/2017/nicole-buys-stuff-atari-130xe.html">Atari 130XE</a>. This machine has an interesting characteristic: it has composite, S-Video, and an RF modulator, built right in, all running at the same time. Plus, the RF is an RCA jack on the back, so I can bring my own cable. I was warned: cable quality here matters a <em>lot</em>. At least here, I can give it the most fighting chance.</p>

<p>There are two ways to approach channels here. The first is to simply do an automatic scan. That’s probably the easiest for most people.</p>

<p><img src="/assets/img/legacy/scan.png" title="the frequency, she is very high" alt="Black screen with a blue notification that it is scanning VHF I" /></p>

<p>You can also tune into a particular frequency manually. For the Atari 130XE, the automatic was good enough, though.</p>

<p><img src="/assets/img/legacy/tune.png" title="the frequency, she is very high" alt="Black screen with a blue notification that it is scanning VHF I" /></p>

<p>For the Atari, Here’s me switching between modes while <a href="/2021/fallin-in-a-pitfall.html"><em>Pitfall II</em></a> plays. It’s starting with RF.</p>

<p><video SRC="/assets/img/legacy/modes.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>Notice that the high-frequency noise is gone on RF, but shows as vertical lines on the other modes. This is a characteristic of the modulation and demodulation; it’s pretty much inevitable that higher-frequency components of the signal will be lost. Some might find this preferable. I’d definitely find it playable.</p>

<h2 id="colors-in-my-tv-game">Colors? In my TV Game?</h2>

<p><img src="/assets/img/colory/ctg6.JPEG" title="the color tv game 6: inferior, but very pretty" alt="A Color TV Game 6, in brilliant yellow, with built-in controls" /></p>

<p>The Color TV Game 6 is the iconic first Nintendo console. Thankfully, mine is <em>not</em> the first, it’s the later CTG-6V, so it should be much <a href="/2023/not-another-color-post-i-swear.html">more playable</a>.</p>

<p><img src="/assets/img/colory/reset.jpg" title="the small paddle is another option, but it wasn't used to beef up the numbers" alt="0-0, both paddles in the center" /></p>

<p>My past attempts to take screenshots of this console and its 15-game sibling didn’t turn out that great, with a lot of distortion. This was using a generic AV box; so let’s see if the Legacy RF can handle this any better.</p>

<p>One major downside here is that the Color TV-Game 6 has a built-in cable. Therefore, I won’t be able to use my own nicer one like I could for the Atari 130XE. Honestly, this cable feels thin and weak too. Here’s a quick side-by-side comparison.</p>

<p><img src="/assets/img/legacy/cables.jpeg" title="i have calipers somewhere but I don't feel like going looking for them" alt="two cables, one thicker than the other" /></p>

<p>And like I was afraid of, unfortunately there is still a lot of noise in the output. You can’t really blame the upscaler for that. I suppose a cable mod <em>would</em> be a lot easier than a composite mod, at least.</p>

<p><img src="/assets/img/legacy/game6.png" title="This mode isn't very fun to play in doubles, actually-- and even less fun as one person" alt="Color TV game 6 gameplay, with noise" /></p>

<p>In fact, you can really tell it’s the cable’s fault because just moving around the cable, with no impact on the console, causes a lot of distortion and even a brief signal dropout. Also, enjoy some beautiful beeping audio– American Pong-consoles usually had a separate speaker for that!</p>

<p><video SRC="/assets/img/legacy/glitch.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>It’s worth noting that for Japanese consoles like this, you want to search for NTSC-M. You may have heard of NTSC-J, but that’s a matter of how the signal is to be interpreted; the channel layout and encoding is still the same, and that’s what the scan is doing.</p>

<h2 id="hard-mode">Hard mode</h2>

<p>In October of 2023, I wrote an article on <a href="/2023/tv-luke-i-am-your-tv-vader.html"><em>TV Vader</em></a>, in which I promised a future article on the Epoch Cassette Vision. And in July of 2024, I finally <a href="/2024/cassette-a-nova.html">delivered</a>. What took so long? Well, the problem was that the Cassette Vision I <em>wanted</em> to use was this:</p>

<p><img src="/assets/img/vader/cassie.jpg" title="it's a nice system" alt="A console labeled Epoch Cassette Vision Jr, with a game called Battle Vader inside" /></p>

<p>The Epoch Cassette Vision Jr. However, it proved a formidable foe– none of my capture devices could get its signal– though I could see it over an analog TV, my days of television photographing are mostly behind me. But it also resisted a composite mod; the negative voltages make this complicated in a good day, and the Jr.’s circuit board ruined it, providing heavy interference. This interference is probably why it was so hard to capture as well.</p>

<p><img src="/assets/img/cassie/noiz.JPG" title="this file is called 'noiz.JPG'. little behind the scenes peek" alt="Noisy screen" /></p>

<p>It’s a bit funny; the Cassette Vision has all of the game hardware on the cartridge. The only role the console plays is to provide controls, and to encode the video. The Jr. may have a better control scheme for <em>Pak-Pak Monster</em>, but it fails at the video job. It all worked out; getting a full-size Cassette Vision allowed me to cover <a href="/2024/game-consoles-have-games.html#:~:text=Big%20Sports%2012"><em>Big Sports 12</em></a>. But can the Legacy AV make it work?</p>

<p>Yet again, the Cassette Vision Jr. has a hardwired cable. I also had to switch to “2ch”. Nevertheless, I got a picture on 98.7MHz, but it’s <em>rough</em>. Scaler mode without framelock is the way to go here. (Plus, the Cassette Vision is interlaced!) It also lacked audio.</p>

<p><video SRC="/assets/img/legacy/wobbly.mp4" width="75%" autoplay="" muted="" loop=""> You don't have a video tag support or something</video></p>

<p>Dropping to 97.7MHz using the manual tune got me some audio. Definitely playable in this state, though very wobbly. I might’ve just gone with this for the blog post!</p>

<p><video SRC="/assets/img/legacy/noisy.mp4" width="75%" controls=""> You don't have a video tag support or something</video></p>

<p>One thing I did notice is that while the picture is wobbly, I don’t see all the weird noise that was in the composite mod attempt. To make sure this wasn’t an artifact of the game (after all, most of the hardware is on the cartridge!) I decided to switch to <em>Battle Vader</em>.</p>

<aside><p>I also found out while doing this that my <i>Battle Vader</i> cartridge is missing all of its screws. Did I do that?</p></aside>

<p>In this case, the game showed no picture on 97.7MHz, but <em>did</em> work with audio on 98.7MHz. I don’t really understand…</p>

<p><img src="/assets/img/legacy/vader.png" title="I was expecting to battle darth vader, I don't understand" alt="Battle Vader gameplay" /></p>

<p>But it didn’t show the noise. My guess would be the inherent filtering that you get looking over the signal over RF gets rid of it, which is why the engineers at Epoch didn’t care about its presence. Perhaps a sufficient low-pass filter would fix things and allow this to be S-Video modded like its larger counterpart? (In fact, perhaps those colored smears <em>are</em> the noise)</p>

<h2 id="conclusions">Conclusions</h2>

<p>So, what’s my opinion of the Legacy AV with RF attachment for the OSSC Pro? I think, combined with the OSSC Pro’s scaler mode, this is probably the best solution I’ve used for RF on vintage consoles, period.</p>

<p><img src="/assets/img/legacy/legit.png" title="all legitimately acquired and dumped, of course" alt="Unreadable 80-column text" /></p>

<p>But of course, it can’t do magic. RF is inherently a compromised video format, encoding things for broadcast and mixing audio and video. 80 column text is right out. But on a good day, with a powerful signal and a high-quality cable, the RF mode comes pretty damn close to composite. And I’d say that’s great. (Do need to tweak those colors, though) Thanks to Matt Buxton at <a href="https://videogameperfection.com/">VGP</a> for sending it my way!</p>

<p><img src="/assets/img/legacy/pitfall.png" title="it's white gold, that's a thing" alt="Pitfall II on MSX" /></p>

<p>But seriously Nicole your Panasonic FS-A1F has RGB, just use that.</p>]]></content><author><name></name></author><category term="upscaler" /><category term="oscc" /><category term="rf" /><summary type="html"><![CDATA[There is a major issue with video game consoles and even some computers prior to about, say, 1985 or so; nearly all of them lacked even composite video outputs and required RF. This is a huge pain; composite mods require effort and reverse-engineering, while RF demodulation usually relies on old machines as modern demodulators can be questionable at best. And now, finally, we have what promises to be an enthusiast-grade solution: the OSSC Pro Legacy AV expansion, now with RF input.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/legacy/die.png" /><media:content medium="image" url="https://nicole.express/assets/img/legacy/die.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Lost Prototype Found! The Origin of Lock-On Technology!</title><link href="https://nicole.express/2026/april-fools-joke.html" rel="alternate" type="text/html" title="Lost Prototype Found! The Origin of Lock-On Technology!" /><published>2026-04-01T09:01:00-04:00</published><updated>2026-04-01T09:01:00-04:00</updated><id>https://nicole.express/2026/april-fools-joke</id><content type="html" xml:base="https://nicole.express/2026/april-fools-joke.html"><![CDATA[<p>That’s right. We all know about <a href="https://ieeexplore.ieee.org/abstract/document/5254691/">Lock-On Technology</a>, the secret dark art of Sega used to turn <em>Sonic &amp; Knuckles</em> into what it should have been if <em>Sonic the Hedgehog 3</em> hadn’t been rushed to release. But what if I told you that that wasn’t supposed to be the first game with <a href="https://apps.dtic.mil/sti/html/tr/ADA633541/">Lock-On Technology</a>? What if Sega had intended Lock-On Technology for an entirely different game, on a different console? Also, what if 80’s sitcoms were involved?</p>

<h2 id="but-of-course">But of course</h2>

<p>That’s right. The Sega Master System was intended to have Lock-On Technology before the Genesis. However, in 1989, Tonka wasn’t convinced this was the best route, and decided to save money by omitting the cartridge header. And admittedly, Sega made what many researchers have seen since as a questionable decision, partnering with tiny American developer Nexa. But at the time, the massive success of <em>Monopoly</em> was seen to demand a truly dramatic follow-up.</p>

<p><img src="/assets/img/alfreally/alf.jpg" title="after 10,000 years I'm free! time to conquer earth!" alt="Alf title screen" /></p>

<p>That’s right. <em>ALF</em> for the Sega Master System. We’ve seen it <a href="/2021/alf-2-alf-harder.html">before</a>, already known on this blog for pushing the limits of the Master System hardware farther than even the vaunted “blast processing” of the Sega Genesis could keep up with. But it could’ve gone farther.</p>

<p><img src="/assets/img/alfalfa/cart.jpeg" title="no, you're off-center" alt="ALF for the Master System with a cartridge slot on top" /></p>

<p>That’s right. By spending six weeks digging through various dumpsters, the lost prototype has finally been found: <em>ALF</em>, now enhanced with Lock-On Technology. This version is a bit more primitive than the later Genesis version, without a shield to protect the cartridge port, but that snapped off my <em>Sonic &amp; Knuckles</em> anyway.</p>

<p><img src="/assets/img/alfalfa/snk.jpeg" title="knuckles and sonic" alt="Sonic and Knuckles with its broken lid" /></p>

<p>That’s right. I should’ve taken better care of my things as a child, but that’s not relevant. What’s relevant is this would’ve been revolutionary. A game-changer, if you will. In that it literally changed games. To add ALF to them.</p>

<h2 id="alf-lex-kidd-in-miracle-world">ALF-lex Kidd in Miracle World</h2>

<p><img src="/assets/img/alfalfa/kid.jpeg" title="more like ALF-lex.. oh wait I used that for the section title" alt="Alex Kidd in Miracle World 'locked on' to ALF" /></p>

<p>That’s right. Of course, <em>Alex Kidd in Miracle World</em> was basically Sega’s answer to <em>Super Mario Bros.</em> (Wonder who? Is he in a Miracle World? I thought not) so of course, it should’ve been a high priority to support for this. And at first glance, it looks pretty good. There’s ALF. He’s in Miracle World. All is right with the world.</p>

<p><img src="/assets/img/alfalfa/alfwater.jpg" title="wait there's nowhere for him to buy the swimsuit" alt="Alf swimming in Miracle World" /></p>

<p>That’s right. Alf’s swimming idea doesn’t fit in this narrow passage. In fact, putting ALF in Miracle World was a silly idea. Let’s just switch out the cartridge and go back to <em>ALF</em>.</p>

<p><img src="/assets/img/alfalfa/alfgone.jpg" title="now he's just copying Garfield" alt="Alf title screen without Alf" /></p>

<p>That’s right. He’s loose. We’re all doomed.</p>

<div class="steps">
    <h2><i>A series on:</i> <b>April Fool's Day</b></h2>
    <p>A bit of levity on this otherwise deathly serious blog.</p>
    <ul>
        
        
        

        

        
        <li>
            
                <a href="/2019/april-fools-joke.html">The Canon Cat!</a>
            
            
                — Wherein a rare 1980s computer gets fur all over my carpet and begs for food.
            
        </li>
        
        
        
        

        

        
        <li>
            
                <a href="/2022/april-fools-joke.html">Mr. Do Proves Our History Is Not What It Seems</a>
            
            
                — A look at a vintage arcade board reveals the dark secrets of reality itself. Don't believe what they say, only believe what they (Mr.) Do
            
        </li>
        
        
        
        

        

        
        <li>
            
                <a href="/2023/april-fools-joke.html">Another Weird Cartridge! Why doesn't it have a label?</a>
            
            
                — The deepest depravity of the human condition revealed in the form of an NES cartridge. Not just because this post has 240p interpreted as 480i, but mostly because of the murder
            
        </li>
        
        
        
        

        

        
        <li>
            
                <a href="/2024/april-fools-joke.html">ROM Hacking in the 90's</a>
            
            
                — A look back at an internet that is no more. Under construction!!
            
        </li>
        
        
        
        

        

        
        <li>
            
                <a href="/2025/april-fools-joke.html">The Nintendo Family Computer: Forgotten 8-bit Powerhouse?</a>
            
            
                — History takes a very different turn, and now westerners don't get to enjoy Nintendo games. Also some other stuff might've happened
            
        </li>
        
        
        
        

        

        
        <li>
            
                <b>Lost Prototype Found! The Origin of Lock-On Technology!</b>
            
            
                — What if Lock-On Technology had existed on the Sega Master System? That's right!
            
        </li>
        
        
    </ul>
</div>]]></content><author><name></name></author><category term="silly" /><summary type="html"><![CDATA[That’s right. We all know about Lock-On Technology, the secret dark art of Sega used to turn Sonic &amp; Knuckles into what it should have been if Sonic the Hedgehog 3 hadn’t been rushed to release. But what if I told you that that wasn’t supposed to be the first game with Lock-On Technology? What if Sega had intended Lock-On Technology for an entirely different game, on a different console? Also, what if 80’s sitcoms were involved?]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/alfalfa/cart_.jpeg" /><media:content medium="image" url="https://nicole.express/assets/img/alfalfa/cart_.jpeg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Pinball in my House, 2026: Alice Goes to Wonderland</title><link href="https://nicole.express/2026/nicole-in-blunderland.html" rel="alternate" type="text/html" title="Pinball in my House, 2026: Alice Goes to Wonderland" /><published>2026-03-22T09:01:00-04:00</published><updated>2026-03-22T09:01:00-04:00</updated><id>https://nicole.express/2026/nicole-in-blunderland</id><content type="html" xml:base="https://nicole.express/2026/nicole-in-blunderland.html"><![CDATA[<p>So, an ongoing background story in this blog has been that I quite like to play pinball. A problem with pinball, though, is that it is an intensely <em>physical</em> game. Video pinball machines, <a href="/2020/modding-the-toyshock-haunted-house.html">modded</a> or <a href="/2019/review-toyshock-haunted-house-pinball.html">otherwise</a>, struggle to scratch the same itch, even though they have major benefits, like multiple tables. And many manufacturers have, over the years, tried to make a home pinball machine work. Now we have another: Wonderland Amusements. Let’s take a look.</p>

<p>So, first off, a few ground rules.</p>

<ol>
  <li>What happened to the modded ToyShock? Destroyed in a move, unfortunately. Apartment life is rough for projects like that. If I went back and did it again, “being able to be taken apart” is something I would have taken more seriously. Sadly, this means I can’t directly compare the two.</li>
  <li>I contributed to the Kickstarter for this pinball machine. That being said, I spent all my own money on it, and have had no contact with Wonderland Amusements beyond the usual Kickstarter updates. Still, some might consider that a personal investment.</li>
</ol>

<h2 id="wonderland">Wonderland</h2>

<p>Wonderland Amusements is a <a href="https://wonderlandamusements.com/">new company</a>, though they have some pedigree– many of the same minds behind Arcade1up, whose <a href="/2019/review-arcade1up-street-fighter-table.html"><em>Street Fighter</em> cocktail table</a> I played back in 2019. So when they had a project for a sub-$1000 home actual pinball machine, I decided to take the risk.</p>

<p><img src="/assets/img/blunder/wonder.jpeg" title="if you see someone ranting about how late they are, you probably shouldn't stalk them" alt="Wonderland Amusements white rabbit logo" /></p>

<p>A few things happened since then between ordering and getting the machine; this most significantly included moving back to an apartment. So I probably wouldn’t have bought it today. Hey, that’s Kickstarter for you, right? So my dear wife will just have to deal when two large cardboard boxes were delivered to the apartment, full of goodies.</p>

<h2 id="building-the-rabbit-hole">Building the Rabbit-Hole</h2>

<p>Unfortunately, this is a lot more of a DIY project than the ToyShock. The ToyShock came in more or less two pieces, the headboard and the table itself, and you just put one on top of the other. The mechanics of the machine are in one piece, but you have to build the box around it.</p>

<p><img src="/assets/img/blunder/mech.jpeg" title="the original picture had my feet in it, but this isn't that kind of blog, so I cropped it" alt="Mechanics and a black PCB" /></p>

<p>Now, the boxes are easy enough to build if you’ve built IKEA furniture before, or for that matter an Arcade1up. While the pieces were thoroughly packed, I did get hit with some shipping damage. A side panel on the table suffered a puncture from something.</p>

<p><img src="/assets/img/blunder/puncture.jpeg" title="I don't think I could've done this" alt="A puncture in a side panel" /></p>

<p>It doesn’t look too bad here, and is thankfully below the playfield. Unfortunately, it’s also visible from the outside. I have not contacted Wonderland Amusements about this; this is a hard piece to replace once installed and I just wanted the damn machine by the time I noticed this. The “wood” here is very thin MDF, much like Arcade1up cabinets. It’s fine, but it’s not resilient or durable. (The playfield does seem to be actual plywood)</p>

<p><img src="/assets/img/blunder/damage.jpeg" title="if it was perfect I'd be tempted to try to keep it that way." alt="The damage on the outside; the side art is cracked" /></p>

<aside><p>I'm told that some arcades have put Arcade1up machines on location. This strikes me as a very poor decision due to the quality, and the same goes for the <i>Alice Goes to Wonderland</i>. Quality is one of the things you're sacrificing to hit a price point. Just shove a <a href="/2022/sixty-for-one-and-one-for-sixty.html">60-in-1</a> in a broken Dynamo cab like everyone else.</p></aside>

<p>As for assembly, I will note a few issues; the first of which is that they used these little wooden pins for spacing and for alignment. The problem is the pins are smaller than the holes, so they just fall out, making this more finicky than it needs to be.</p>

<p>The bigger issues are my own fault, but I will include for your elucidation, should you choose to build this. Here’s a photo I took while building. You can also see the power supply here.</p>

<p><img src="/assets/img/blunder/box.jpeg" title="for more information on Zip, play Aspect Star 'N'" alt="A box with a beanie baby and a power supply" /></p>

<p>Notice there are four pillars sticking up. Those were pre-installed; at the time, I misread the <a href="https://wonderlandamusements.com/pages/assembly">assembly instructions</a> and assumed that I was supposed to install them, and therefore that as often happens with Kickstarter pieces, the instructions were out of sync with what I got, and therefore the four pillars were just pre-installed now.</p>

<p><img src="/assets/img/blunder/error1.png" title="the scale of instructions is weird" alt="Four pillars are removed, while side pieces are added" /></p>

<p>This was wrong, and I only learned this much later, when I went to add in the playfield mechanics. The four pillars are just for convenience while shipping, and play no role in the final game, and in fact foul the playfield. While struggling to get it to fit, I slightly damaged one of the playfield pieces– unfortunately, while the damage is almost invisible, it was to the Queen of Hearts’s castle, and everyone familiar with <em>Alice in Wonderland</em> knows that the integrity of my neck is likely not long for this world. Alas.</p>

<p>The other error I made was putting the acrylic top on. (Yes, acrylic, not glass. I get it, shipping is expensive– still, glass would’ve been nice, and ToyShock managed it) You can not slide it in, you have to remove the side rails. No really, you have to, even if you think you can make it. I was hoping I could make it and slightly damaged things. Minor issues, but hopefully you won’t make the same mistakes I did.</p>

<p>Honestly, putting it together was kind of fun. The best part is getting to install playfield toys; a bouncy Mad Hatter, the Queen of Hearts’ Castle, the Hookah Caterpillar. All the electronics are self-contained, and the most you have to do is attach a few cables between them. I got a shot of the CPU while it was outside the box.</p>

<p><img src="/assets/img/blunder/cpu.jpeg" title="STM stands for 'Shut the Manual'" alt="A single surface-mount chip" /></p>

<p>An STM32F103ZET6 ARM, a Cortex-M3 32-bit ARM CPU core. That’s more than plenty; there might be some additional pieces behind the screen for video output, but remember, all the gameplay comes from the real world. Still, the bootup time is pretty long, so a faster CPU might’ve helped there.</p>

<p>One minor complaint– the instructions never actually tell you where to put in the balls! Eventually I realized you just roll them down the field into the outlane.</p>

<h2 id="the-machine">The machine</h2>

<p>So, now you have a pinball machine in your slightly pink-lit house. So what?</p>

<p><img src="/assets/img/blunder/mach.jpeg" title="the glimpse into Nicole land" alt="The Alice pinball machine" /></p>

<p>The playing height is pretty good for me at 6’1”, which is good; I ended up replacing the ToyShock’s legs with reproduction legs meant for a Gottlieb wedgehead, and I was expecting to have to do the same here. Given Arcade1up’s small default height and reliance on risers, I was afraid of the same.</p>

<p><img src="/assets/img/blunder/field.jpeg" title="taken during daytime" alt="The Alice pinball playfield" /></p>

<p>The playfield is simple, but has a few loops and pop bumpers. If you like 1980’s machines I think you’ll be right at home here, and I like 1980’s pinball machines. It’s definitely less elaborate than some modern tables, though.</p>

<p><img src="/assets/img/blunder/loop.jpeg" title="taking photos through acrylic is a pain 'then why didn't you remove the acrylic' shut up" alt="The back loop" /></p>

<p>Though it’s clearly a thinner MDF, there are definitely a few nice points towards long-term use. For example, the area around the flipper buttons, where your hands will rest, has a plastic layer. There’s a protective film covering that you can remove, but overall this should protect the art in those areas a little longer. Damaged control panels from usage was a big problem on Arcade1ups with heavy use so that’s good to see.</p>

<p><img src="/assets/img/blunder/film.jpeg" title="there's some on the playfield too" alt="A protective film around the button" /></p>

<p>The launcher is purely mechanical. In fact, it’s completely disconnected from the playfield and features no electronics at all. <em>Alice Goes to Wonderland</em> does have a multiball, but it’s based around locking in balls first, because the machine physically can not fire balls onto the playfield on its own. Tons of pinball machines do this, so it’s not a big problem. I have noticed a few glitches during multiball where it seems to lose track of how many balls are on the playfield; hopefully firmware updates will fix this. A neat thing about the “ball lock” area is that you can reach it with a skill shot off the launcher.</p>

<p><img src="/assets/img/blunder/shooter.jpeg" title="pew pew" alt="The shooter, which has a red knob and a green keyhole mount" /></p>

<p>I know there are a lot of very good pinball machines that don’t have mechanical launchers– <em>Terminator 2</em>, <em>Attack from Mars</em>, etc. But I am glad Wonderland went with one here. Especially on simpler tables, a mechanical launcher adds a lot of control. This one feels pretty good.</p>

<aside><p>The machine also has no way to know that it has no balls into it. You can start a game and it'll just dutifully fire the solenoid to put a ball into position, and then assume that it's done so successfully. But you know, who would be silly enough to play a pinball machine with no balls loaded?</p></aside>

<p><img src="/assets/img/blunder/flippers.jpeg" title="flip" alt="The lower part of the playfield, showing flippers" /></p>

<p>The flippers similarly feel nice, with a quick reaction to the buttons, and a nice solenoid thud. Despite this, the flippers are my biggest long-term concern, but only because growing up, we had a <em>Firepower II</em> and that thing never could keep its flippers working for long.</p>

<p>Notice the big “SAFE” light, by the way. I notice that this machine is pretty generous with giving you a new ball when you drain yours, especially early on; that’s a nice touch that most modern pinball machines have, so it’s good to see here. Especially for home use, where you’re not really trying to extract every quarter.</p>

<h3 id="the-screens-the-thing">The screen’s the thing</h3>

<p><img src="/assets/img/blunder/bad.jpeg" title="not a great score, but a great number of characters" alt="The screen, lighting up an otherwise dark room" /></p>

<p>The score is displayed on a small LCD screen. This is pretty typical, and while I would’ve loved an LCD or a big clicky 1960’s style score counter, I have to admit the LCD has a lot of advantage over them for this usecase, especially if you connect to the internet services; have fun punching out your Wi-Fi password without a screen. And there are a few effects like timers, graphics, and the sort to make it fun. The screen is colorful, bright, and has a high enough resolution that I won’t complain.</p>

<aside><p>Why would you ever trust Nicole to tell you what is a "good enough" resolution? Like, just the wrong person for that, honestly.</p></aside>

<p><img src="/assets/img/blunder/screen.jpeg" title="the problem with taking photos of the screen is that i'm trying to play the game" alt="The screen in bootup mode" /></p>

<p>There are a series of controls on the front, in lieu of a coin slot. A bit of an annoyance is that the two buttons are the same color, but are not the same; the left one is a “confirm” button and the right one is a “back” button. Still, it’s not like you’re going to be looking at them; as far as I have seen the front controls don’t play a role in the game. Obviously the audio controls only control the audio from the screen; those ball noises are real, how would controlling them even work?</p>

<p><img src="/assets/img/blunder/controls.jpeg" title="finally the nintendo d-pad patent is dead" alt="The controls, a D-pad and buttons" /></p>

<p>Like a lot of modern pinball machines, Alice can go on several missions throughout the game, noted by series of lights surrounding her and different graphics on screen. The game is definitely tuned for ease of play. There’s plenty of speech (though Alice with an American accent is so strange! I’m sorry) and basic images; no real video, though, but why are you playing a pinball machine and expecting to look at the screen?</p>

<p><img src="/assets/img/blunder/game.jpeg" title="light? emitted from MY diodes?" alt="Alice on the art surrounded by lights" /></p>

<p>One thing that might a useful update though, is some kind of attract mode when you’re not playing.</p>

<h2 id="conclusions">Conclusions</h2>

<p><img src="/assets/img/blunder/eye.jpeg" title="the art can have a grotesque lean, but nowhere near full american mcgee" alt="Side art with a screw-hole almost but not quite in the mad hatter's eye" /></p>

<p>A lot of companies have tried to enter the home pinball market. And none of them have lasted long. The problem is, pinball is inherently expensive. <em>Alice Goes to Wonderland</em>, if you buy it today, doesn’t meet the sub-$1000 price point the Kickstarter aimed for, though it’s still a lot less than something like Stern Pinball’s $6000 home models, you do get a lot more machine. For example, <em>Alice Goes to Wonderland</em> lacks proper drop targets, relying on LED lights on the drop-like panels instead.</p>

<p><img src="/assets/img/blunder/drop.jpeg" title="YES" alt="Things that are not drop targets, but kind of look like them" /></p>

<p>Still, overall for someone just a week or two in, I’m happy I got in on this one. Only time will tell how long it remains usable, and how repairable issues end up being. (Already, the Mad Hatter has fallen off his spring; that should be an easy fix, at least) Judging by their website, Wonderland isn’t a one-and-done, at least– they claim to have a <em>Teenage Mutant Ninja Turtles</em> licensed game coming soon.</p>

<p><img src="/assets/img/blunder/scor.jpeg" title="the screen reflects on the playfield a little but it's not a big deal" alt="A slightly better final score of 586,525" /></p>

<p>Of course, there’s the other problem with this market. See, I’m in an apartment now. I’m pretty happy with the one machine, but that’s one and done for me. I just don’t have room for a whole bunch of these, and I imagine a lot of other people have the same problem– this also proved an issue for Arcade1up. But hey, I’m not here to run a business, I’m here to play a game. And so far I’m enjoying this one.</p>

<p><img src="/assets/img/blunder/end.jpeg" title="off with my head, I guess" alt="The Red Queen says Game Over" /></p>]]></content><author><name></name></author><category term="pinball" /><category term="electromechanical" /><summary type="html"><![CDATA[So, an ongoing background story in this blog has been that I quite like to play pinball. A problem with pinball, though, is that it is an intensely physical game. Video pinball machines, modded or otherwise, struggle to scratch the same itch, even though they have major benefits, like multiple tables. And many manufacturers have, over the years, tried to make a home pinball machine work. Now we have another: Wonderland Amusements. Let’s take a look.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/blunder/drop.jpeg" /><media:content medium="image" url="https://nicole.express/assets/img/blunder/drop.jpeg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">What if the Apple ][ had run on Field-Sequential?</title><link href="https://nicole.express/2026/the-apple-that-wasnt.html" rel="alternate" type="text/html" title="What if the Apple ][ had run on Field-Sequential?" /><published>2026-03-08T09:01:00-04:00</published><updated>2026-03-08T09:01:00-04:00</updated><id>https://nicole.express/2026/the-apple-that-wasnt</id><content type="html" xml:base="https://nicole.express/2026/the-apple-that-wasnt.html"><![CDATA[<p>One thing I remain fascinated by is the field-sequential color system. Essentially, unlike <a href="/2021/shouldve-had-field-sequential.html">composite video</a>, which sacrifices color depth in space, field sequential sacrifices color depth in <em>time</em>. But the specifics matter, and we have the specifics: the United States adopted such a system, but didn’t stick with it. So this article describes a nonexistent, alternate-world computer– what would an early mass-market 8-bit computer have looked like in a world where the field-sequential color system was in place?</p>

<h2 id="point-of-divergence">Point of Divergence</h2>

<p>Let’s look at the timeline of field-sequential color in the United States.</p>

<ul>
  <li>January 12, 1950: CBS reveals their system to the public.</li>
  <li>October 11, 1950: Formal authorization of the field-sequential system</li>
  <li>October 17, 1950: RCA files a lawsuit against the FCC</li>
  <li>October 18, 1950: New York Times condemns incompatible system’s adoption</li>
  <li>November 1950: Public tests begin</li>
  <li>May 28, 1951: Supreme Court rules against RCA</li>
  <li>June 25, 1951: CBS begins full broadcasting in field-sequential color in NYC</li>
  <li>October 20, 1951: Color broadcasting ends</li>
  <li>March 26, 1953: CBS abandons their system</li>
</ul>

<p>In alternate history, the “point of divergence” is the point where an alternate timeline (“ATL”) splits off from the original timeline (“OTL”). There is a very simple point of divergence for this project: avoid the Korean War. This, of course, would have huge effects on geopolitics, on the lives of people not killed in the war, their families, basically <em>everyone</em> in Korea, on the Cold War generally, and we’re just going to ignore all of that nonsense to focus on a niche computer industry difference. In this timeline, the 38th parallel holds.</p>

<p>Why is the Korean War relevant? Well, the southern invasion of the north began on June 25, 1950. UN forces landed at Inchon on September 15, 1950. And during the Korean War, the American National Production Agency wanted the end of color television to free up resources for the war effort; this is why things fizzled out so quickly in late 1951. The war ended (-ish) in July 27, 1953, by which point NBC had a “compatible color” system we all know and love raring to go. So we need to get rid of the Korean War to give CBS time to gain market share.</p>

<p><strong>To be clear</strong>, compatible color is better than the CBS field-sequential system in basically every way. We are saddling this timeline with a weird spinning-disc system. But we are saving the lives of ~3 million people so who’s to say what is bad</p>

<aside><p><i>Nicole, "the Korean War doesn't happen" is way too vague of a point of divergence!</i></p><p>Yeah, that's why I'm posting this on my personal blog and not on a dedicated alternate history website, they'd tear me apart.</p></aside>

<h2 id="the-standard">The standard</h2>

<p>In broad strokes, CBS field-sequential color is <a href="/2021/interlace-me-not.html">interlaced</a> in both lines, and in colors.</p>

<p><img src="/assets/img/composite/interlace-hell.png" title="look you're the one who didn't want composite artifacts" alt="Field-sequential television diagram, showing how each color is interlaced." /></p>

<p>But to actually make something here, we’re going to need to look into the standard in more details than that. So I started with looking at <a href="https://patents.google.com/patent/US2304081A/en">US Patent 2,304,081</a>, granted December 8, 1942, in the midst of World War 2. Unfortunately, this patent has a lot of nice diagrams, but is focused on the broad concept, not the specifics of the standard adopted in 1951.</p>

<p><img src="/assets/img/columbus/patent.png" title="couldve called this the Goldmark ][ rather than the Columbia, he was that important" alt="US Patent 2,304,081 header, granted to Peter C Goldmark" /></p>

<p>Wikipedia cites a 1999 <a href="https://ieeexplore.ieee.org/document/736350">IEEE publication</a>, which is behind a paywall. However, searching for the DOI did allow me to at least uncover this table:</p>

<p><img src="/assets/img/columbus/table.png" title="I should copy this out into text but..." alt="Table showing color fields, color frames, color pictures, interlace ratio, lines per frame, line frequency, and lines per frame for a number of proposed systems" /></p>

<p>And eventually I was able to get ahold of a copy of the paper in question. The first author is listed as Peter Goldmark, who, it’s worth noting, died in 1977. So this is seems to be a republish of <a href="https://ieeexplore.ieee.org/document/1694465">an original paper from 1942</a>. I notice that none of the tables apparently match the claimed characteristics of the CBS field-sequential system, but System 3 is the chosen one from the paper.</p>

<p>You might notice in the table above, there’s a distinction between “color frames”, “frames”, and “color pictures”. Terminology is a little clunky to the modern eye because we ended up with a system where every frame contains full color information. I’ll create the term “progressive color frame rate”; if you weren’t interlacing, what would be your rate of full-color frames? In NTSC, this is the same thing as the field rate. In field-sequential System 3, this takes three fields.</p>

<p>I was unable to find a description of how the blanking periods worked in System 3. However, frustratingly, despite being the main citation, System 3 is <em>not</em> the CBS color system that was adopted in 1951! The first citation I could find proving this was this <a href="https://archive.org/details/sim_radio-television-news_1951-09_46_3/page/42/mode/2up">1951 Radio and Television News</a> article, <a href="https://www.rfcafe.com/references/radio-news/simulating-cbs-color-signal-radio-television-news-september-1951.htm">transcribed here</a>. But yes, this was a 144Hz system! Presumably that adjustment was made after 1942.</p>

<p>Finally, I was able to get my hands on the <a href="https://www.govinfo.gov/content/pkg/FR-1950-10-20/pdf/FR-1950-10-20.pdf">Federal Register</a> for October of 1950, wherein the linked PDF the color information starts on page 10. 144 Hz is indeed the correct value, not System 3’s 120 Hz.</p>

<table>
  <thead>
    <tr>
      <th> </th>
      <th>System 3</th>
      <th>CBS Color</th>
      <th>NTSC-M</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Field rate</td>
      <td>120 Hz</td>
      <td>144 Hz</td>
      <td>59.94 Hz</td>
    </tr>
    <tr>
      <td>Progressive color frame rate</td>
      <td>40 Hz</td>
      <td>48 Hz</td>
      <td>59.94 Hz</td>
    </tr>
    <tr>
      <td>Interlaced frame rate</td>
      <td>20 Hz</td>
      <td>24 Hz</td>
      <td>29.97 Hz</td>
    </tr>
    <tr>
      <td>Lines per int. frame</td>
      <td>375</td>
      <td>405</td>
      <td>525</td>
    </tr>
    <tr>
      <td>Line frequency</td>
      <td>22,500 Hz</td>
      <td>29,160 Hz</td>
      <td>15,734 Hz</td>
    </tr>
  </tbody>
</table>

<p>Unfortunately, the synchronization information is difficult to figure out because of the low-quality scan of the diagram of Appendix I, but it looks like there is a “color pulse” on red fields, placed within the vertical blanking interval, replacing the horizontal sync pulse with a narrower one. I’m going to assume the color pulse is being shown as having a width of 0.45 times the normal horizontal blanking sync width.</p>

<p><img src="/assets/img/columbus/bad.png" title="ugh" alt="Diagram showing what it calls the color sync pulse. The text is very hard to read" /></p>

<h3 id="whats-it-like-in-the-1970s">What’s it like in the 1970s?</h3>

<p>Here’s a question; what kind of screens do we see in the 1970’s? The electro-mechanical spinning disc system is incredibly cool, but it puts a lot of limitations on how big your monitor is.</p>

<figure><img src="/assets/img/composite/zenith_fs_receiver.jpg" title="tiny screen" alt="An early field-sequential television. The screen is very small" />

<figcaption>Picture taken from <a href="https://www.earlytelevision.org/zenith_fs_receiver.html">the Early Television Museum</a>. I believe this to be fair use.</figcaption></figure>

<p>Well, it may be tragic, but I think the spinning disc would probably be gone by this point. I’m not an expert on, well, anything really, but I’m <em>really</em> not an expert on analog vacuum tube electronics, but it feels plausible to me that you could produce a longer-lived color phosphor, and a shadow mask technology wherein only one colored electron beam is active for each field. It should still produce a decent picture. (Eventually, you could use <a href="https://www.youtube.com/watch?v=z-q8ehzHeQQ">an LCD</a>! “JVC LCD CRT” is a fun search term.)</p>

<p>CBS was known to be <a href="https://www.earlytelevision.org/images/nyt_4-27-50_advance_in_color_by_cbs.jpg">demonstrating</a> how their video system could be decoded entirely electronically without a spinning disc as early as April 1950, but I don’t know what their system there was.</p>

<h2 id="the-computer">The Computer</h2>

<p>So, I’m calling the fantasy computer here the Columbia ][, Columbia for CBS, and ][ because I want to have the “spirit” of the Apple ][. We’ll use the MOS 6502 as our CPU; this is questionable from a pure alternate history perspective (the close ties between the semiconductor industry and the defense industry mean the lack of Korean War would be expected to change a lot), but it makes it, you know, feasible to talk about specifics.</p>

<p>Similarly, due to the reduced resolution of sequential-color TV, you might instead imagine a world where computers just don’t bother to try to display on TV monitors. After all, both the TRS-80 and Commodore PET used dedicated monitors. But that’s less fun. The Columbia ][ is like its Apple counterpart; the goal is to create an affordable computer with color video using the existing environment that could be implemented with discrete logic.</p>

<p>I wrote a <a href="/2024/phasing-in-and-out-of-existence.html">pretty detailed</a> post on how the Apple ][ works, and what you’ll see is everything is dictated by the video timing, which in turn comes from a single 14.318180MHz oscillator. That oscillator frequency was chosen first and foremost because of is the NTSC colorburst frequency. So the Columbia ][ won’t use it. We’re back to square one.</p>

<h3 id="start-with-the-picture">Start with the picture</h3>

<p>So, as you probably guessed from the “progressive color frame rate” above, we’re dropping into progressive scan here and are going to ignore interlacing. In 525 line interlaced, we get 262 lines in progressive mode. In 405 line interlaced, we get 202 lines in progressive mode.</p>

<p>It gets worse. We want to know the visible area. On NTSC, the vertical blanking interval is approximately 22 lines per field. My reading of the FCC standard is that that should remain the same for color relative to the line frequency. So 262 becomes 240p, and 202 becomes 180p. Technically, it could get even worse. Vertical overscan is a thing; the Apple ][ places only 192 lines under computer control. But let’s stick with 180 horizontal lines. Here’s a size comparison on the vertical axis, ignore the horizontal.</p>

<p>
<svg width="640" height="480" viewbox="0 0 640 480" xmlns="http://www.w3.org/2000/svg" title="oh gods please age well SVG" alt="Size comparison">
    <style>
    .small {
      font: 16px monospace;
      color: #000;
    }
    </style>
    <rect fill="#66F" x="0" y="0" width="640" height="480" />
    <text x="5" y="440" class="small">240p visible area</text>
    <rect fill="#0DD" x="0" y="0" width="620" height="384" />
    <text x="5" y="380" class="small">192 line</text>
    <rect fill="#DD0" x="0" y="0" width="600" height="360" />
    <text x="5" y="350" class="small">180 line</text>
</svg>
</p>

<h3 id="the-horizontal">The horizontal</h3>

<p>Alright, so this is where it gets fun. Since we don’t have the colorburst, let’s use a 14MHz crystal that is exactly 14MHz. The pixel clock on the Apple circuit is 7M, so on the Columbia ][ the pixel clock is exactly 7MHz. So we output a pixel every 0.1429μs.</p>

<p>But our line rate has increased! We need to accommodate a 29.160kHz line rate, 34.29μs. So with a fixed 7MHz pixel clock, our horizontal resolution is 240.05 pixels per scanline. To compare these numbers to the Apple, I’ll use the same ratio, since it looks like relative timing is the same in the sequential-color system.</p>

<table>
  <thead>
    <tr>
      <th> </th>
      <th>Apple</th>
      <th>Columbia</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Pixel clocks per line</td>
      <td>455</td>
      <td>240</td>
    </tr>
    <tr>
      <td>Visible pixels</td>
      <td>280</td>
      <td>148</td>
    </tr>
  </tbody>
</table>

<p>A 7MHz pixel clock gives us a resolution of 148x180. It’s tempting to make a diagram like this to compare the relative resolution, but remember the pixels <em>really</em> won’t be square.</p>

<p>
<svg width="640" height="480" viewbox="0 0 640 480" xmlns="http://www.w3.org/2000/svg" title="oh gods please age well SVG" alt="Size comparison">
    <style>
    .small {
      font: 16px monospace;
      color: #000;
    }
    </style>
    <rect fill="#66F" x="0" y="0" width="640" height="480" />
    <text x="5" y="440" class="small">320x240</text>
    <rect fill="#0DD" x="0" y="0" width="560" height="384" />
    <text x="5" y="380" class="small">280x192 Apple ][</text>
    <rect fill="#DD0" x="0" y="0" width="296" height="360" />
    <text x="5" y="350" class="small">148x180 Columbia ][</text>
</svg>
</p>

<p>So can we increase that 7MHz? Well, the DRAM used in my Apple ][<sub>plus</sub> is Motorola MCM4116BC20.</p>

<p><img src="/assets/img/columbus/dram.jpeg" title="finally a picture, there are so many words here" alt="Rows of RAM chips" /></p>

<p>According to the data sheet, this has 200ns access time, or 0.2μs, but read on in the datasheet to find 375ns cycle time.</p>

<p><img src="/assets/img/columbus/speeds.png" title="arent you special" alt="150ns BC-15, 200ns BC-20, 250ns BC-25, 300ns BC-30" /></p>

<p>We need to read the memory once to crank out 7 pixels. At 7MHz pixel clock, we should have 1μs to do this, which at first glance, seems fine to double the pixel clock to 500ns?</p>

<table>
  <thead>
    <tr>
      <th> </th>
      <th>Apple</th>
      <th>Columbia-7M</th>
      <th>Columbia-14M</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Pixel clocks per line</td>
      <td>455</td>
      <td>240</td>
      <td>480</td>
    </tr>
    <tr>
      <td>Visible pixels</td>
      <td>280</td>
      <td>148</td>
      <td>296</td>
    </tr>
  </tbody>
</table>

<p>But it won’t work. See, the entire Apple architecture is based around interleaving graphics and CPU accesses, so we’d also need a faster CPU. Unfortunately, in 1976, the <a href="https://web.archive.org/web/20211204234443if_/http://archive.6502.org/datasheets/mos_6501-6505_mpu_preliminary_aug_1975.pdf">6500 series datasheet</a> noted that the maximum speed was 1MHz. So wide pixels it is.</p>

<p>Oh, but we’re not done yet. I really wanted to keep the 180 pixel height, but it’s not divisible by eight. This causes issues for an 8-pixel height text mode; remember, the Apple ][ used an off-the-shelf chip for its font. So let’s drop that by just 4 pixels; 176. And finally, one last thing. 148 isn’t divisible by 7. 147, on the other hand, is; it’s 7 * 21.</p>

<p>
<svg width="640" height="480" viewbox="0 0 640 480" xmlns="http://www.w3.org/2000/svg" title="oh gods please age well SVG" alt="Size comparison">
    <style>
    .small {
      font: 16px monospace;
      color: #000;
    }
    </style>
    <rect fill="#66F" x="0" y="0" width="640" height="480" />
    <text x="5" y="440" class="small">320x240</text>
    <rect fill="#0DD" x="0" y="0" width="560" height="384" />
    <text x="5" y="380" class="small">280x192 Apple ][</text>
    <rect fill="#DD0" x="0" y="0" width="294" height="352" />
    <text x="5" y="348" class="small">147x176 Columbia ][</text>
</svg>
</p>

<p>You might wonder why I’m sticking with 7 bits per byte, when the Apple ][ uses the last bit for a half-pixel shift, the one that lets you choose between pink/green or blue/orange. But the very first models of the Apple did <em>not</em> have that half-bit shift; the 7M comes from dividing down the clock. But why would we divide down the clock when there’s no need for the 3.5MHz colorburst?</p>

<p>My gods, alternate history is <em>hard</em>!</p>

<h2 id="graphics-modes">Graphics modes</h2>

<h3 id="text-and-hires-mode">TEXT and HIRES Mode</h3>

<p>The first mode we want to implement is text mode. After all that effort above, we got a 21-character wide text mode with 22 rows, worse than the VIC-20. Those are some <em>wide</em> characters too. I used the Signetics 2513 font, but I copied it by hand into my graphics editor, so if there are any differences, it’s uh, the butterfly effect.</p>

<p><img src="/assets/img/columbus/zork.png" title="PLEASE STOP SCREAMING oh you have to? sorry" alt="ZORK I: THE GREAT UNDERGROUND EMPIRE in a stretched font" /></p>

<p>Let’s set some ground rules. For one thing, this is only 21x22 = 462 bytes. This is less than half the 40x24 = 960 bytes left for the Apple’s text mode, but I’m assuming it’s still going to be oddly spread over a 1kiB page, because of the need to refresh DRAM. Still, we’ll give two possible text mode pages, just like the regular Apple, in less RAM. That 4kiB system doesn’t seem as bad.</p>

<p>The Apple also has the capability of running with only the bottom four rows of text. Let’s reproduce that here too.</p>

<p>
<svg width="294" height="176" viewbox="0 0 294 176" xmlns="http://www.w3.org/2000/svg" title="oh gods please age well SVG" alt="this looks awful, thanks">
    <style>
    .small {
      font: 16px monospace;
      color: #000;
    }
    </style>
    <rect fill="#888" x="0" y="0" width="294" height="144" />
    <rect fill="#800" x="0" y="144" width="14" height="8" /><rect fill="#000" x="14" y="144" width="14" height="8" /><rect fill="#800" x="28" y="144" width="14" height="8" /><rect fill="#000" x="42" y="144" width="14" height="8" /><rect fill="#800" x="56" y="144" width="14" height="8" /><rect fill="#000" x="70" y="144" width="14" height="8" /><rect fill="#800" x="84" y="144" width="14" height="8" /><rect fill="#000" x="98" y="144" width="14" height="8" /><rect fill="#800" x="112" y="144" width="14" height="8" /><rect fill="#000" x="126" y="144" width="14" height="8" /><rect fill="#800" x="140" y="144" width="14" height="8" /><rect fill="#000" x="154" y="144" width="14" height="8" /><rect fill="#800" x="168" y="144" width="14" height="8" /><rect fill="#000" x="182" y="144" width="14" height="8" /><rect fill="#800" x="196" y="144" width="14" height="8" /><rect fill="#000" x="210" y="144" width="14" height="8" /><rect fill="#800" x="224" y="144" width="14" height="8" /><rect fill="#000" x="238" y="144" width="14" height="8" /><rect fill="#800" x="252" y="144" width="14" height="8" /><rect fill="#000" x="266" y="144" width="14" height="8" /><rect fill="#800" x="280" y="144" width="14" height="8" /><rect fill="#000" x="0" y="152" width="14" height="8" /><rect fill="#800" x="14" y="152" width="14" height="8" /><rect fill="#000" x="28" y="152" width="14" height="8" /><rect fill="#800" x="42" y="152" width="14" height="8" /><rect fill="#000" x="56" y="152" width="14" height="8" /><rect fill="#800" x="70" y="152" width="14" height="8" /><rect fill="#000" x="84" y="152" width="14" height="8" /><rect fill="#800" x="98" y="152" width="14" height="8" /><rect fill="#000" x="112" y="152" width="14" height="8" /><rect fill="#800" x="126" y="152" width="14" height="8" /><rect fill="#000" x="140" y="152" width="14" height="8" /><rect fill="#800" x="154" y="152" width="14" height="8" /><rect fill="#000" x="168" y="152" width="14" height="8" /><rect fill="#800" x="182" y="152" width="14" height="8" /><rect fill="#000" x="196" y="152" width="14" height="8" /><rect fill="#800" x="210" y="152" width="14" height="8" /><rect fill="#000" x="224" y="152" width="14" height="8" /><rect fill="#800" x="238" y="152" width="14" height="8" /><rect fill="#000" x="252" y="152" width="14" height="8" /><rect fill="#800" x="266" y="152" width="14" height="8" /><rect fill="#000" x="280" y="152" width="14" height="8" />        <rect fill="#800" x="0" y="160" width="14" height="8" /><rect fill="#000" x="14" y="160" width="14" height="8" /><rect fill="#800" x="28" y="160" width="14" height="8" /><rect fill="#000" x="42" y="160" width="14" height="8" /><rect fill="#800" x="56" y="160" width="14" height="8" /><rect fill="#000" x="70" y="160" width="14" height="8" /><rect fill="#800" x="84" y="160" width="14" height="8" /><rect fill="#000" x="98" y="160" width="14" height="8" /><rect fill="#800" x="112" y="160" width="14" height="8" /><rect fill="#000" x="126" y="160" width="14" height="8" /><rect fill="#800" x="140" y="160" width="14" height="8" /><rect fill="#000" x="154" y="160" width="14" height="8" /><rect fill="#800" x="168" y="160" width="14" height="8" /><rect fill="#000" x="182" y="160" width="14" height="8" /><rect fill="#800" x="196" y="160" width="14" height="8" /><rect fill="#000" x="210" y="160" width="14" height="8" /><rect fill="#800" x="224" y="160" width="14" height="8" /><rect fill="#000" x="238" y="160" width="14" height="8" /><rect fill="#800" x="252" y="160" width="14" height="8" /><rect fill="#000" x="266" y="160" width="14" height="8" /><rect fill="#800" x="280" y="160" width="14" height="8" /><rect fill="#000" x="0" y="168" width="14" height="8" /><rect fill="#800" x="14" y="168" width="14" height="8" /><rect fill="#000" x="28" y="168" width="14" height="8" /><rect fill="#800" x="42" y="168" width="14" height="8" /><rect fill="#000" x="56" y="168" width="14" height="8" /><rect fill="#800" x="70" y="168" width="14" height="8" /><rect fill="#000" x="84" y="168" width="14" height="8" /><rect fill="#800" x="98" y="168" width="14" height="8" /><rect fill="#000" x="112" y="168" width="14" height="8" /><rect fill="#800" x="126" y="168" width="14" height="8" /><rect fill="#000" x="140" y="168" width="14" height="8" /><rect fill="#800" x="154" y="168" width="14" height="8" /><rect fill="#000" x="168" y="168" width="14" height="8" /><rect fill="#800" x="182" y="168" width="14" height="8" /><rect fill="#000" x="196" y="168" width="14" height="8" /><rect fill="#800" x="210" y="168" width="14" height="8" /><rect fill="#000" x="224" y="168" width="14" height="8" /><rect fill="#800" x="238" y="168" width="14" height="8" /><rect fill="#000" x="252" y="168" width="14" height="8" /><rect fill="#800" x="266" y="168" width="14" height="8" /><rect fill="#000" x="280" y="168" width="14" height="8" />
</svg>
</p>

<p>For HIRES mode, I’ve already established 7 bits per byte, so it’s a fairly straightforward effort to adapt it. LORES mode relies on specifics of how repeating bit patterns are treated as video by composite video decoders; artifact colors are not an option here.</p>

<p>But the thing is, this is all monochrome. How do we get color?</p>

<h3 id="you-cant-kill-me-but-you-can-interrupt-me">You can’t kill me, but you can interrupt me</h3>

<p>The Apple had a circuit called the “color killer”, which tried to eliminate the color burst. The good news with field-sequential color is that we have eliminated the color burst entirely, so our text, while blocky, will always be. But what if we had some sick color tricks?</p>

<p>I am making an executive decision that will dramatically change the Columbia ][ from its Apple counterpart, by giving it a built-in <code class="language-plaintext highlighter-rouge">IRQ'</code>. I’m killing <code class="language-plaintext highlighter-rouge">LORES</code> mode entirely for this, so it’d better be worth it.</p>

<ul>
  <li><code class="language-plaintext highlighter-rouge">SCRIRQON</code> - Writing to this hooks up the <code class="language-plaintext highlighter-rouge">IRQ</code> line to the 144Hz field rate</li>
  <li><code class="language-plaintext highlighter-rouge">SCRIRQOFF</code>- Writing to this turns off the field IRQ.</li>
</ul>

<p>Additionally, the first IRQ triggered after <code class="language-plaintext highlighter-rouge">SCRIRQON</code> is written to will <em>always</em> be that which also has the “color pulse” mentioned above. In this way, the skilled developer can always know what field they’re on.</p>

<p>This means that you can write to the text page select register, or you can change text in real time, and you’ll know exactly which field is being drawn. A character written on the red pulse fields, and then removed in the next two fields, will be red. With RGB as our colors, we are limited to a very familiar eight-color palette: <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #000"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F00"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #0F0"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #00F"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #FF0"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #0FF"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F0F"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #FFF"></span></p>

<h4 id="planar-palettes">Planar palettes</h4>

<p>We have two text pages, and two HIRES pages. This means that with a simple page-switching IRQ, you could easily have two colors in addition to white and black. Essentially, you write your text to both pages, and switch between them in your IRQ. The two pages act like bitplanes; a letter written to both will be white, but if it’s only written to one of the two pages, it’ll be one of the colors below.</p>

<ul>
  <li>G=B: <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F00"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #0FF"></span> Red - Page 1, Green-Blue - Page 2</li>
  <li>R=G: <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #FF0"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #00F"></span> Blue - Page 1, Red-Green - Page 2</li>
  <li>R=B: <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F0F"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #0F0"></span> Green - Page 1, Red-Blue - Page 2</li>
</ul>

<p>This is a very simple IRQ to code, so these palettes could be very common options. You could think of them as the sequential-color world equivalent of the CGA palettes. It’s essentially a planar graphics mode at this point. I think this is something that could be straightforwardly implemented for a BASIC programmer to be able to choose a palette at will. (While it requires both pages be in use at all time, note that the lower resolution means they take up as much space as one OTL screen page)</p>

<h4 id="real-time-edits">Real-time edits</h4>

<p>So, let’s assume you want to have all possible RGB colors. Now we have to get a bit fancy; technically, you can edit any byte of memory at any time, but let’s say you want to keep your edits to the vertical blanking interval, avoiding any risk of screen tearing.</p>

<p>The vertical blanking interval is 22 lines, but our line rate is 29.16 kHz. Our CPU clock cycle is 1MHz, so we have 754.5 cycles.</p>

<aside><p>The Apple ][ did some finicking with the clock to avoid the half-cycle, but I don't see any reason to do so here, because that was to keep things aligned with the colorburst. Where we are, we don't need colorbursts.</p></aside>

<p>This is an extremely limited amount of time! But what did you expect? Still, since we can write to RAM at any time, it’s probably enough time to get ahead of the beam and copy a screen from a buffer, but it doesn’t leave you a lot of time for actually running game code. Which actually makes it kind of similar to how double-HIRES mode ended up on the OTL Apple ][.</p>

<p>Text mode you might have a better shot since it’s less data, and full-color text might be nice. Shame about that resolution.</p>

<h2 id="little-brick-out"><em>Little Brick Out</em></h2>

<p><img src="/assets/img/mock-me/little-brick-out.png" title="cuz she's a brick... OUT" alt="Game Over screen in Little Brick Out. Only a few bricks are broken and the game is telling me my score is not too good." /></p>

<p><em>Little Brick Out</em> is, in a sense, the reason the Apple ][ exists. As the legend goes, having made <em>Breakout</em> in hardware for Atari, Steve Wozniak wanted to make it in software, but needed a computer capable of doing so. Is the Columbia ][ such a computer? Well, no, because I got rid of LORES mode. But let’s see anyway.</p>

<p><img src="/assets/img/columbus/col.png" title="what is this sorcery" alt="Little Brick Out, played with text" /></p>

<p>The first thought I had was to use text mode with two pages, as I suggested above. Something even the 4k version should be able to do. The limited resolution really lends itself to a vertical playfield. Here the palette is the G=B configuration, but the palette could be switched on the fly, creating some psychedelic colors. The big downside is having the limited Signetics 2513 font. A few semigraphics characters really wouldn’t hurt, and hey, Tandy had them.</p>

<p>A bigger problem is that the grid resolution is pretty low, so this is almost going to feel like playing <em>Breakout</em> on an LCD screen, or maybe an <a href="/2024/studio-two-part-two.html">RCA <span class="studioii">Studio II</span></a>. (Moving objects on a field-sequential system can have some funky color effects, but these blocks will be moving too slowly to enjoy them) To fix that, we’d have to go into HIRES mode.</p>

<aside><p>Or... RES mode? That doesn't sound great.</p></aside>

<p>I stuck with text mode here, but it might be fun to make some mockups of pixel-accurate mode. However, remember the RAM requirements; I stuck with text mode for this breakout game (“<em>Little X Out</em>?) because I was thinking about what it would need to be able to run on the most limited model.</p>

<h2 id="could-this-have-been-the-machine">Could this have been the machine?</h2>

<p>Honestly, it’s hard for me to imagine the Columbia ][ being as successful as the Apple was in our world. The resolution pain of supporting domestic TVs is just too high here. VisiCalc can already be hard enough to parse with 40 columns! (And no, 147 pixels is not enough to do a decent software 40 column mode)</p>

<p>But here’s some more thoughts on the concept.</p>

<h3 id="rgbiish">RGBI…ish</h3>

<p>I have put seven pixels per byte to match the original Apple ][; the Apple uses that extra bit to shift the color signal slightly; by moving from half a pixel, you change from the “pink and green” artifact colors to the “blue and orange”. That doesn’t do anything for us; I mean, it moves things slightly, which might be useful when our resolution is <em>so low</em>, but what about something else?</p>

<p>One thought I had was an <strong>intensity bit</strong>. Essentially, there’s some sort of attenuator circuit; when the intensity bit is not set, the video signal is reduced for that set of seven pixels. For our two-page graphics mode setup, this would allow us to attenuate the colors separately, expanding our four-color palette, within 7x1 blocks. And remember, each page could be attenuated separately.</p>

<p>For the “G=B” palette, above, I treated it as a four-color variant. But really, you have the following:</p>

<ul>
  <li>White <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #FFF"></span></li>
  <li>Attenuated White <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #888"></span></li>
  <li>Black <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #000"></span></li>
  <li>Attenuated black <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #000"></span> - This might actually be distinguishable from black on some TVs if you mess with brightness</li>
  <li>The normal, full colors <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F00"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #0FF"></span></li>
  <li>Attenuated colors <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #800"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #088"></span></li>
  <li>Attenuate one page and not the other <span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #F88"></span><span width="10" style="width: 16px; height:16px; display: inline-block; background-color: #8FF"></span></li>
</ul>

<p>That’s a nine-shade (but ten for marketing) palette at the cost of a fairly simple <code class="language-plaintext highlighter-rouge">IRQ</code> routine and some complex 7x1 pixel block limitations, but honestly nothing worse than wrapping your head around composite artifacts and shifting pixels on the Apple.</p>

<p>And of course, if you’re doing something to shift graphics on every field, then you basically have an IBM EGA-style RrGgBb setup, only with 7-pixel wide intensity fields. Pretty good for 1977!</p>

<h3 id="the-columbia-2600">The Columbia 2600</h3>

<p>What if we took the “line at a time” approach of the <a href="/2023/have-you-read-atari-today.html">Atari 2600</a> in the field-sequential world? At first glance, this seems perfectly feasible; the TIA’s 8 luminance bits look like they should provide a pretty good range of colors. 24-bit RGB is nothing to sneeze at. We need a way to programmatically make the “color pulse”, of course, but on the other hand, maybe we can use the space freed up by the chroma to fit in a full-length playfield register.</p>

<p>But the big thing that keeps biting us bites us again: the increased line rate means less time for mid-scanline effects, and less code that can run on a scanline. The OTL Atari 2600 has 76 cycles per scanline, derived from its 1.19MHz clock and a linerate slightly off from the spec 15.734kHz. The ATL’s higher line rate drops that budget down to about 40, and then even lower if you drop to a 1MHz clock. And now consider what the 2600’s dot clock is, 3 times the cycle clock. Those are some even chunkier pixels, and remember, the achievable resolution of the 2600 is much lower due to sprite and playfield pixels being wider than the dot clock. We might not need that extra playfield register.</p>

<p>
<svg width="640" height="480" viewbox="0 0 640 480" xmlns="http://www.w3.org/2000/svg" title="oh gods please age well SVG" alt="Size comparison">
    <style>
    .small {
      font: 16px monospace;
      color: #000;
    }
    </style>
    <rect fill="#b66" x="0" y="0" width="640" height="480" />
    <text x="5" y="440" class="small">320x240</text>
    <rect fill="#Da2" x="0" y="0" width="456" height="384" />
    <text x="5" y="380" class="small">228x192 Atari 2600 (dot clock)</text>
    <rect fill="#aae" x="0" y="0" width="240" height="360" />
    <text x="5" y="350" class="small">120x180 Columbia 2600 (dot clock)</text>
</svg>
</p>

<p>The vertical resolution is somewhat arbitrary on the TIA, since it is only concerned with lines. 192 seems a typical value, and I gave the Columbia 2600 as much credit as possible. In reality, I bet developers would often want to go below 180 lines to give themselves more time for game logic.</p>

<p>Another way to get more time for game logic might be to leave out the one of the fields. Blue is the color the human eye is least sensitive to, so black out the screen during the blue fields. Is it that weird? It does make it so Pitfall Harry is now swimming in oil.</p>

<p><img src="/assets/img/columbus/green.jpg" title="for full limited pixels, imagine pitfall harry was very fat" alt="A screenshot of Pitfall II with the green channel removed" /></p>

<p>Actually, the <a href="/2021/the-most-unfair-child.html">Fairchild Channel F</a>’s framebuffer approach might give it a better shot in the market in this timeline. <a href="/2024/radio-keith-orpheum.html">RCA</a> is probably still screwed though.</p>

<h3 id="the-columbia-entertainment-system">The Columbia Entertainment System</h3>

<p>The NES’ <a href="https://www.nesdev.org/wiki/PPU_registers#OAMDMA">OAM DMA</a> takes 513-514 cycles to copy sprites from system RAM to the internal sprite memory (OAM). The good news is, the faster 1.7MHz NES CPU spends 1282 cycles in vblank, so you can update sprites, but the amount of other stuff you can do during vblank will be pretty low.</p>

<p>Of course, that 1.7MHz is also derived from a colorburst crystal.</p>

<h2 id="is-this-a-thing">Is this a thing?</h2>

<p>I think a reasonable question to ask is, I’ve described the technical details of a system, but could you make this? Well, I don’t have a CBS Color System monitor to try it out, and I doubt you do either. If you just want field-sequential color, <a href="/2021/color-and-3d-finally-united.html">get a Vectrex 3d Imager</a>, it’s way more attainable than a failed color TV system only sold for a few months during the Korean War.</p>

<p><img src="/assets/img/spin3d/mine.jpg" title="mine, mine, all mine" alt="3d Minestorm on the Vectrex 3d Imager, with green mines and a blue ship" /></p>

<p>What about an emulator as a programming challenge, a fantasy console like the <a href="https://www.lexaloffle.com/pico-8.php">PICO-8</a>? I thought about it; you’d have to make some decisions about the memory map that I left to “eh”, but I don’t see why you couldn’t; but I just figured it wasn’t the interesting part. Prove me wrong if you want to, I’d love to see it!</p>

<aside><p><i>Hey Nicole, I bet I could 'vibe code' such an emulator in a few minutes just by feeding my AI girlfriend this blog post!</i></p><p>But in that case, who actually wrote it? Me? You? Your AI girlfriend who did achieve consciousness thanks to the power of your love? The people whose 6502 emulator source codes got encoded into the pile of linear algebra? The philosophical questions are too distracting.</p></aside>]]></content><author><name></name></author><category term="8bit" /><category term="fantasy" /><category term="apple" /><summary type="html"><![CDATA[One thing I remain fascinated by is the field-sequential color system. Essentially, unlike composite video, which sacrifices color depth in space, field sequential sacrifices color depth in time. But the specifics matter, and we have the specifics: the United States adopted such a system, but didn’t stick with it. So this article describes a nonexistent, alternate-world computer– what would an early mass-market 8-bit computer have looked like in a world where the field-sequential color system was in place?]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/columbus/col.png" /><media:content medium="image" url="https://nicole.express/assets/img/columbus/col.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Sega Consoles Never Die: The Soggy-1000 and MD3</title><link href="https://nicole.express/2026/people-love-the-sega.html" rel="alternate" type="text/html" title="Sega Consoles Never Die: The Soggy-1000 and MD3" /><published>2026-02-22T08:09:00-05:00</published><updated>2026-02-22T08:09:00-05:00</updated><id>https://nicole.express/2026/people-love-the-sega</id><content type="html" xml:base="https://nicole.express/2026/people-love-the-sega.html"><![CDATA[<p>It should come as no surprise that I love the retro video game fandom. There is a huge outut of effort and creativity to keep game consoles alive and improve them decades after they were abandoned by their manufacturers; and this is an international effort. So today I’ve ordered a few consoles from enthusiasts in China via Aliexpress. China is a major center of this due to their thriving electronics industry, so I’m excited to dig in. And of course, how could it be anything but Sega?</p>

<h2 id="the-md3">The MD3</h2>

<p>This was being sold as “Golden 16 Bit Genesi 3 Mega Drive III Superior Quality Pcb with stereo output”, which is, of course, a beautiful stream of words. But… just what are <a href="https://www.thegameisafootarcade.com/wp-content/uploads/2017/03/Kid-Icarus-Of-Myths-and-Monsters-Game-Manual.pdf">the Orcos?!!!!!</a> <!-- I don't know why I constantly reference this bit of a game manual. Sometimes you read something when you're young and your brain just rewires around it --></p>

<p><img src="/assets/img/2sega/genny.jpeg" title="more game consoles need foxes" alt="A genesis 3 in orange. It's labeled 'MEGA' not SEGA." /></p>

<p>It’s a Genesis 3, of course. And I have to say this is a beautiful case; not just because of the fox art, but it feels great. I have to assume this is injection molded; I don’t actually have a legit Genesis 3 to compare, but if you told me they found the original molds in an abandoned warehouse somewhere I’d believe you. (Though unlicensed clones using Genesis 3-like shells have a <a href="https://segaretro.org/Unlicensed_Mega_Drive_clones_(Genesis_3)">long history</a>)</p>

<aside><p>The Sega Genesis 3, if you're not aware, was a variant of the Genesis or Mega Drive released only in the United States in 1998. By this time, the Genesis was old news but its games still scattered used game stores and were cheaply available. The console was sold by toy company Majesco as a budget model, as low as $20. ($20 in 1998 is about $40 in 2026)</p><p><figure><img src="/assets/img/2sega/g3.jpg" title="The Core System. NOTE: The Genesis 3 does not support the 32X or the Sega CD, this is the only functionality" alt="Genesis 3 box" />

<figcaption>Image from <a href="https://segaretro.org/File:Genesis3_MD_US_Box_Front_Alt.jpg">Sega Retro</a></figcaption></figure></p><p>Since the Genesis 3 was a US exclusive, I feel good using 'Sega Genesis', the term I'm used to as a North American, over 'Mega Drive', the more common international term. As opposed to other places where I just use Genesis anyway.</p></aside>

<p><img src="/assets/img/2sega/side.jpeg" title="does this blog post qualify as 'fox news'" alt="Side of the console showing orange and white" /></p>

<p>On the side is the AV out, and you can also see the nice two-tone orange and white. I need to stress something here, though: this is a Saturn-style video pinout. Do not spend a ton of time trying to wedge a Genesis 2-style AV cable into it. I don’t know anyone who would do something silly like that, do you?</p>

<p><strong>UPDATE</strong> Dennis van den Broek mentioned that this might be based off of <a href="https://www.printables.com/model/1003580-sega-genesis-3-shell-replacement">his replacement shell</a> design.</p>

<h3 id="whats-inside">What’s inside</h3>

<p>First off, I have to say, it’s almost a shame the shell of this system is so nice because the PCB is gorgeous.</p>

<p><img src="/assets/img/2sega/insideg.jpeg" title="look at that design, it's a shame to enclose this in a box" alt="Inside of the console. The PCB has a design" /></p>

<p>What distinguishes the Genesis 3 from later licensed Genesis consoles, like the Radica hardware or the AtGames “Firecore” system, is that it is entirely Sega hardware; I don’t believe Majesco played any role in hardware design. There are two variants of the Genesis 3; the first was basically equivalent to later models of the Genesis 2 in a smaller container. The second used the Sega 315-6123-01.</p>

<p><img src="/assets/img/2sega/315.jpeg" title="what is with the 315 code anyway, Sega used that for so many ICs" alt="Sega 315-6123-01 surface mount chip" /></p>

<p>This is a “GOAC”, a Genesis on a chip. Everything, from the 68000 and Z80 CPUs, to the graphics chip, the PSG, and the FM synthesizer, are all in this square. (Not even an epoxy blob! Beautiful) It wasn’t just used in the Genesis 3 either; it also made its way to certain models of the Sega Pico. The other two ICs on the PCB are just some SRAM and a Sony CXA1645M RGB video encoder. I’m a little surprised they went with the vintage CXA1645M, actually, but it does provide composite and S-Video encoding as well.</p>

<p><img src="/assets/img/2sega/md3.jpeg" title="who is MD3" alt="MD3 - Optimization - One-Chip Low-Noise" /></p>

<p>The only clue as to the creation of this board is this logo, noting that it was made in China in 2024, and provides the motivations for using a new PCB: optimization and low noise. The Genesis 3 was a discount product, after all.</p>

<h3 id="getting-it-to-work">Getting it to work</h3>

<p>I spent a long time trying to figure out the power supply, and tried to question the seller, who seemed confused as well. (Language barrier, I assume) You see, there’s a sticker on the bottom:</p>

<p><img src="/assets/img/2sega/sticker.jpeg" title="Genesis - Genesis System Console is a very Sega phrasing, honestly" alt="Retro Childhood 2025 - 16-Bit MD - Genesis Genesis System Console - Rating DC9V 0.7A - Model No: CHA-25-16BIT" /></p>

<p>The sticker mentions 9V DC 0.7A. I think anyone who gets too far into old video game consoles or music equipment will end up with a bunch of 9V power supplies. But it doesn’t mention the polarity. The original Genesis 3 used a center-positive power supply that was compatible with the Genesis 2, but that power supply doesn’t fit in the hole. The classic trick of measuring polarity is to use a multimeter to see which side is connected to ground, but in this case, that revealed neither was.</p>

<p><img src="/assets/img/2sega/rectifier.jpeg" title="someone call electroboom" alt="A tiny 4-pin surface mount IC" /></p>

<p>Eventually, I figured it out. This tiny chip is an ABS210, and it’s a bridge rectifier. Typically, bridge rectifiers are used to convert AC to DC, but in this case we’re told to use a rectified 9V DC supply. So all this bridge rectifier is actually doing here is ensuring that the polarity doesn’t matter; any 9V power supply should work.</p>

<p>Which would explain why the seller was confused.</p>

<h3 id="sega">Sega!</h3>

<p>The use of the 315-6123 GOAC has tradeoffs. The upside is the design simplicity. The downside is that it lacks signals that Sega didn’t need for its use-case. In 1998, the Master System had been off the market in the United States for six years. The 32X had been off the market for two years. So Sega didn’t include those signals. The Sega CD was discontinued at the same time as the 32X, and as a result, there’s no provisions for the expansion port either.</p>

<aside><p>Since the first model Genesis 3 uses the same chipset as the Genesis 2, there are <a href="https://consolemods.org/wiki/Genesis:Genesis_3_Compatibility_Restore">mods</a> to return Master System and 32X compatibility. But the expansion port is still missing.</p></aside>

<p>As a result, the Genesis 3, even in MD3 form, can only really play Sega Genesis games. This is disappointing, but on the other hand, the Genesis still has one of the best libraries of any game console. So what if I can’t play <em>Phantasy Star Fukkokuban</em>?</p>

<aside><p>In case you're unaware, <i>Phantasy Star Fukkokuban</i> was a re-release of the original <i>Phantasy Star</i> for the Sega Genesis in 1994, to promote the release of <i>Phantasy Star IV</i>. It runs a Master System ROM, and the cartridge is wired the same way as the Power Base Converter; the game runs entirely in Master System mode, not taking any advantage of the newer hardware.</p><p><img src="/assets/img/2sega/fuk.jpeg" title="You know, Sega could've included the FM soundtrack, if they had shelled out for a YM2413 in the cart" alt="Phantasy Star Fukkokuban, which uses the Phantasy Star box art on a Japanese cartridge shell." /></p><p>And in case you're wondering, yeah, looking up that "1994" date is what led to the recent <a href="/2026/not-my-casual-hobby.html">AI rant</a>.</p></aside>

<p>Another game I can’t play is <em>Populous</em>. My copy of the game is from the original run, which means that it doesn’t follow the rules of Sega’s TradeMark Security System (TMSS). Unfortunately, the Genesis 3 enforces that at the silicon level. So much for the Sega Seal of Quality.</p>

<p><img src="/assets/img/segalaw/sega-seal.jpg" title="If I can't trust marketing who can I trust" alt="The Sega Seal of Quality on a copy of Populous that doesn't run on most Genesis revisions" /></p>

<p>What I can play is <em>Burning Force</em>, the Namco classic. Here’s a screenshot taken on my Japanese Mega Drive 2, which is unmodified, with the “PC BD MD2 VA0” label, a 315-5487-10 ASIC and a Fujitsu MB3514 video encoder, through an Insurrection Industries cable. Click either image for a larger capture.</p>

<p><a href="/assets/img/2sega/md2-full.png"><img src="/assets/img/2sega/md2.png" title="that force sure is burning" alt="Stage 1 of Burning Force preview" /></a></p>

<p>And here is the Genesis 3 “MD3”. This is using a Saturn Insurrection Industries cable, but admittedly, this cable has a lot of issues with inconsistent pictures. I think there’s a loose connection, but if so, it’s inside the molded end.</p>

<p><a href="/assets/img/2sega/md3-full.png"><img src="/assets/img/2sega/md3.png" title="that force sure is burning" alt="Stage 1 of Burning Force preview" /></a></p>

<p>The green is definitely a little stronger in the green and weaker in the red. However, that sounds like the cable; it’s why it’s frustrating that this doesn’t use an MD2 cable. I’m sure there are good reasons for it. Other than that I don’t really see any issue; perhaps the MD3 signal is just a tad softer, but it’s within the range of capture artifacts.</p>

<p>To confirm whether it was because of the cable, I bought a cheap replacement Saturn cable. (Unfortunately, the Insurrection cable appears to be out of production) This one had some sync issues so I can’t recommend the cable, but it did get rid of the greenish tint.</p>

<p><a href="/assets/img/2sega/md3-full-2.png"><img src="/assets/img/2sega/md3-2.png" title="that force sure is burning" alt="Stage 1 of Burning Force preview, less green" /></a></p>

<aside><p>You might wonder, "why does the blue extend into the border area"? It's because of the palette cycling that <i>Burning Force</i> is doing. Usually that area is in the overscan.</p></aside>

<p>Of course, the MD3 isn’t meant to be compared to a Mega Drive 2; it’s designed to be compared to the Genesis 3’s default motherboard. According to <a href="https://retrorgb.com/genesis3.html">RetroRGB</a>, the Genesis 3 is already nothing to complain about in terms of video output, but audio is lacking. Before that, though…</p>

<h3 id="has-this-ever-happened-to-you">Has this ever happened to you?</h3>

<p>There you are, innocently putting in <em>Virtua Racing</em> for the Genesis. After all, you think. <em>Virtua Racing</em> doesn’t work on the original Genesis 3 motherboard, but with this PCB, it should be possible.</p>

<p><img src="/assets/img/2sega/bop.png" title="when it says developed only for NTSC, that means you're not supposed to use RGB" alt="A black screen with 'DEVELOPED FOR USE ONLY WITH NTSC GENESIS SYSTEMS'" /></p>

<p>Oh! You’ve hit a classic flaw with later Sega Genesis games; the region lock. The Sega Genesis has bits that can be read by the game itself to see what region the game is in, and this game is rendering in the 60Hz Japan mode, which means that my US copy of <em>Virtua Racing</em> just won’t run; I’d get the same result on my Mega Drive 2.</p>

<p>But my Mega Drive 2 doesn’t have this:</p>

<p><img src="/assets/img/2sega/switches.jpeg" title="I have discovered something rather interesting about this, but I will leave that to a future post" alt="Two tiny switches on the MD3 motherboard" /></p>

<p>The two switches are directly configurable; they’re positioned next to the cartridge port, so even with the shell on, you can just reach them with a little plastic spudger or other tool. U/J is the overseas/Japan switch, and 6/5 is 60Hz or 50Hz. This GOAC has it all!</p>

<p><img src="/assets/img/2sega/port.jpeg" title="that desk cover is fake leather, don't worry" alt="Showing how accessible the switches are from the cartridge port" /></p>

<aside><p>I'm not very knowledgable about the Sega Pico, so I don't know which of these combinations actually found use in commercial products. For Genesis usage, the Genesis 3 was a North American (possibly just US?) exclusive, and would only have ever been configured overseas 60Hz from the factory.</p></aside>

<p>And with that set properly, you can play what is objectively the best version of <em>Virtua Racing</em>. If you define objectivity the best by having the most dithering, and being a really interesting technical achievement; how I’d love to see what the SVP could’ve done if used in other titles.</p>

<p><img src="/assets/img/2sega/virtua.png" title="i want to see SVP virtua fighter I bet it'd be amazing" alt="Virtua Racing for Genesis" /></p>

<p>In case you’re wondering, yes, the 50Hz mode also works. I don’t usually have much reason to use 50Hz mode on Genesis, but hey, some people like their Sonics a bit slow and squished. There are systems where PAL had advantages (hello, Commodore 64), but I don’t think this is one of them.</p>

<p><img src="/assets/img/2sega/slownic.png" title="fun fact: the only controller I have in this room is a Master System one" alt="Sonic the Hedgehog in PAL mode. His mouth is open in a stupid way" /></p>

<aside><p>You can also set 50Hz mode alongside Japan mode. As far as I know, this never occurred in reality, since even in parts of Japan that use 50Hz power, analog television signals were always 60Hz NTSC. (59.94Hz, but what's 0.06Hz among friends) Mega Drives released in parts of Asia that used PAL were generally configured the same way as European consoles.</p></aside>

<p>Note that while the system claims to have S-Video and composite support, when I tried either of them with a cable I had lying around, it did not work very well. Not sure what the cause of that is, it actually had a drop out right at the screen I was using to test above, so here’s the title screen.</p>

<p><img src="/assets/img/2sega/composite.png" title="Finally, the SECAM Atari 2600 version of Burning Force" alt="Burning Force title screen in a very garish color screen" /></p>

<p>I pretty quickly realized the flaw: I was using the Framemeister, which <a href="/2021/composite-conflict-completed.html">my past comparison</a> showed really does not work well with composite signals out of the Sega Genesis. (I believe 256-pixel-wide mode works better, but my usual test for that is Master System mode) My little baby Trinitron handles S-Video from this like a champ.</p>

<p><img src="/assets/img/2sega/tv.jpeg" title="Composite works too but I have S-Video so who cares" alt="Burning Force title screen looking good" /></p>

<h3 id="audio">Audio</h3>

<p><img src="/assets/img/2sega/suite1.png" title="Audio is a big deal for the Genesis 240p test suite in particular" alt="Artemio's 240p Test Suite title screen" /></p>

<p>One of the more noteworthy flaws of the original Genesis 3 was that it only output mono sound. To test this, I will go with the usual tool of art, the <a href="https://artemiourbina.itch.io/240p-test-suite">240p Test Suite</a>, which has a convenient audio test mode.</p>

<p><img src="/assets/img/2sega/suite2.png" title="taking 'sound test' a little too literally" alt="240p Test Suite audio test" /></p>

<p>A quick try is left, center, then right. And what I got was…</p>

<audio controls="" src="/assets/img/2sega/240p.wav">Your browser does not support the <code>audio</code> element.</audio>

<p>Right, center, and then left. Which makes it seem like the left and right channels are swapped. And I beeped out my channels to be sure; so this is stereo, but wired wrong. Unfortunate; but if you’re using an audio cable that separates out L and R, this isn’t a huge deal. (On SCART… it’s kind of awful) So here’s <em>Emerald Hill Zone</em>, objectively the best piece of music on the Sega Genesis, totally not just because of my nostalgia.</p>

<audio controls="" src="/assets/img/2sega/emerald.mp3">Your browser does not support the <code>audio</code> element.</audio>

<p>For contrast, here’s how that sounds on my Mega Drive 2, notorious for having a “poor quality” sound filter. I’d say the MD3 sounds pretty good, but the Mega Drive 2 is more effective at blowing out your ears.</p>

<audio controls="" src="/assets/audio/emerald-hill-megadrive2.wav">Your browser does not support the <code>audio</code> element.</audio>

<p>Apparently, this is also wired properly for cartridge audio; however, the only way I have to play cartridge audio on the Genesis is via my Powerbase FM, which doesn’t work here for unrelated reasons. If you have a Mega SD or Mega Everdrive Pro, though, I don’t see any reason why the CD audio wouldn’t work. With reversed audio. It is worth noting that like all Genesis consoles that use an integrated system on a chip, it uses a YM3438, so your music in <em>Hellfire</em> will be too slow but <em>Earthworm Jim</em> should sound fine.</p>

<h2 id="getting-all-soggy">Getting all Soggy</h2>

<p>The “SG-1000 SC-3000 Retro Game Console, Compatible Cartridges &amp; Flash Card, AV Output, 5V USB, 3D-Printed Case” is a very different animal from the MD3 above. Where the MD3 has a sleek molded case, the SG-1000 has a 3d-printed black case. Where the power supply was confusing through a bridge rectifier, the SG-1000 uses a USB-B to provide 5V to its chips. Where the MD3 used hex screws, the SG-1000 uses standard Philips head.</p>

<p><img src="/assets/img/2sega/soggy.jpeg" title="I love the 3d-printed icons above the ports but they didn't photograph great here" alt="Black 3d printed case with a big sideways cartridge slot" /></p>

<p>Robertson screws might’ve been more appropriate, though. Because while I purchased this one from China, the PCB here is of a decidedly <em>Canadian</em> design: this is <a href="https://www.leadedsolder.com/tag/soggy1000">the Soggy-1000</a>, designed by Leaded Solder, whose <a href="https://www.leadedsolder.com/">blog</a> is almost certainly a must-read for anyone here. And how do I know it’s the Soggy-1000?</p>

<p><img src="/assets/img/2sega/sog.jpeg" title="the Sega logo font and the Sonic 3 font" alt="Inside of the Soggy-1000, showing Leaded Solder's logo in the font of Sega's" /></p>

<p>Because it says so right inside. Initially I described this as a clone Soggy-1000, but it’s not really a clone, because this is <a href="https://github.com/barbeque/sg1000">open hardware</a>, including the <a href="https://github.com/kvanderlaag/soggy-case">3d-printed case</a>. This is just a pre-made Soggy-1000. They did remove the name “Soggy-1000” from the case, though.</p>

<p><img src="/assets/img/2sega/chips.jpeg" title="sega without sega" alt="Inside of the Soggy-1000, showing all the chips" /></p>

<p>There’s no Sega ASICs here. The SG-1000 is that rare console built out of off-the-shelf parts; the TI graphics and sound chips used here (the TMS9918A, here heatsinked, and the SN76489A) were available and used by other buyers, and the logic that makes this an SG-1000 is all in discrete logic. This is quite the contrast with my <a href="/2023/sg-1000-is-a-stupid-name-why-is-there-no-sg-500.html">SG-1000 II</a>, which uses a Sega ASIC for everything but the CPU.</p>

<aside><p>The TMS9918A being publicly available is interesting to me, because the TI-99/4A, the oddball 16-bit computer it was made for, remained on the market, and wasn't not being discontinued until October 1983, after even the SG-1000's July launch. My first thought was that it was the price war with Commodore? If that was the case, we could indirectly thank Jack Tramiel for the ColecoVision, MSX1, SG-1000, and maybe even the ColecoVision-inspired Famicom.</p><p>However, Eric Bromley, chief engineer on the ColecoVision, claims he had the design as early as 1979 but couldn't launch it then because of RAM prices, so I guess perhaps TI just always intended to sell their chips to other people. After all, that was and is kind of the core of their business, consumer markets like computers and calculators are a secondary interest.</p></aside>

<p><img src="/assets/img/2sega/control.jpeg" title="obviously it should only be able to use a controller port for the player 2, and player 1 should be a hardwired joystick no one likes" alt="NES controlled with 'SMS' written on it in faded marker" /></p>

<p>I got a controller with the system as well; this is a simple NES controller rewired with a DE-9 head at the end set up in the Master System and SG-1000 “joypad with two buttons” fashion; select and start don’t do anything (and pause is on the console, naturally). Many people don’t like the Master System’s d-pad, while I don’t <em>hate</em> it, I can’t deny this is a nice step up.</p>

<h3 id="testing-stuff">Testing stuff</h3>

<p>So the Soggy-1000 is a well-documented project and I wouldn’t want to steal any of Leaded Solder’s thunder; go read his blog. Plus I don’t have the prerequisites for a full test anyway; for example, the Soggy-1000 has an expansion port for the SK-1100 keyboard, an accessory I lack.</p>

<p><img src="/assets/img/2sega/expand.jpeg" title="didnt spring for the gold plated edge connectors, I see" alt="Expansion port" /></p>

<p>But we can do the basics. Of course, the console can play the standard tombstone-like SG-1000 cartridges, like <em>Monaco GP</em>. Here’s a screenshot I took back on my SG-1000 II, which has a very easy composite mod.</p>

<p><img src="/assets/img/sg1k2k/monacoc.jpg" title="I still want the arcade version of this game but have even less room" alt="Monaco GP on composite" /></p>

<p>And here it is on the Soggy-1000, which needs no composite mod. Note that the difference here is mostly due to using a Sega integrated system vs. a discrete TMS9918A. I’m also not sure why my older screenshot is a bit squished vertically, it almost looks like PAL.</p>

<p><img src="/assets/img/2sega/monaco.png" title="this is what monaco is like" alt="Monaco GP on composite on the Soggy, very similar" /></p>

<aside><p>For fun, I put in <i>Double Target</i>, the Japanese release of the Master System version of Quartet. It put a black screen, but the sound turned off; my understanding is the SN76489A by default turns on into a noisy state, so code did run. Still, I'm not sure why I thought this would be fun, exactly.</p></aside>

<p>And it can play games on the “My Card” format as long as you have a Card Catcher. My Card Catcher’s in a rough shape, but it’s nothing a little duct tape won’t fix.</p>

<p><img src="/assets/img/2sega/catch.jpeg" title="catch you catch me" alt="A My Card in a Card Catcher (held together with duct tape) in a Soggy-1000" /></p>

<p><img src="/assets/img/2sega/pitfall2.png" title="signal might be a little hot" alt="Pitfall II, the player dies" /></p>

<p>I’ll even break out a fancier title– <em>Sherlock Holmes: Loretta no Shouzou</em>. This is a late SG-1000 title that uses a mapper for larger memory capability. While <em>The Castle</em> had 8kiB of onboard RAM, I believe this is the only SG-1000 cartridge that banks ROM.</p>

<p><img src="/assets/img/2sega/2g.jpeg" title="catch you catch me" alt="Double Target and Sherlock Holmes side by side, in very similar boxen" /></p>

<p>Taking a look at the box next to <em>Double Target</em>, a Mark III exclusive, you can see that Sega even branded it the same as a game for that newer system, known for its “Mega Cartridges”. But it runs fine here, whereas <em>Double Target</em> did not.</p>

<p><img src="/assets/img/2sega/holmes.png" title="i think this uses white skin tone because of the MASTER SYSTEM COMPATIBILITY PALETTE (also nobody ever takes screenshots of anything past this room)" alt="Sherlock Holmes: Loretta no Shouzou gameplay" /></p>

<p>The Soggy-1000 includes the provision for a built-in game, should such a pre-programmed ROM pop into the relevant socket through means unknown to modern science. Oddly, the game here is <em>Uranai Angel Cutie</em>. (“Uranai”, 占い, means fortunetelling)</p>

<p><img src="/assets/img/2sega/uranai.png" title="imagine getting in legal trouble for pirating 'uranai angel cutie'" alt="Uranai Angel Cutie title screen" /></p>

<p>This is a fortune-telling game for the SC-3000. And I do mean the SC-3000, in that it’s not really possible to get very far without a keyboard attached; perhaps this is set up to allow quick testing of SK-1100 support?</p>

<p>Note that the Soggy-1000 does not have support for the coin button necessary for the <a href="/2023/neo-geo-eat-your-heart-out.html">SG-1000-based arcade games</a>. I can’t imagine it’d be difficult to hack it in there, though.</p>

<h2 id="segagaga-wait-no-thats-something-else">Segagaga– wait no that’s something else</h2>

<p>So that’s all I wanted to get at with this post, was to look at some of the cool stuff coming out of the fan community. Very cool to see the ways that, while we’re decades after the replacement of the Sega Genesis by now and even further from the SG-1000, the systems are still living on one way or another. At least until Hiromi is on every channel.</p>

<p><img src="/assets/img/2sega/wow.png" title="I want this game on PCB but Namco stuff is pricy" alt="Burning Force title screen. Blue-haired anime girl is on every channel" /></p>]]></content><author><name></name></author><category term="16bit" /><category term="8bit" /><category term="games" /><category term="info" /><category term="sega" /><category term="stuff" /><summary type="html"><![CDATA[It should come as no surprise that I love the retro video game fandom. There is a huge outut of effort and creativity to keep game consoles alive and improve them decades after they were abandoned by their manufacturers; and this is an international effort. So today I’ve ordered a few consoles from enthusiasts in China via Aliexpress. China is a major center of this due to their thriving electronics industry, so I’m excited to dig in. And of course, how could it be anything but Sega?]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/2sega/consol.jpeg" /><media:content medium="image" url="https://nicole.express/assets/img/2sega/consol.jpeg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">You Can’t Trust the Internet Anymore</title><link href="https://nicole.express/2026/not-my-casual-hobby.html" rel="alternate" type="text/html" title="You Can’t Trust the Internet Anymore" /><published>2026-02-14T13:21:00-05:00</published><updated>2026-02-14T13:21:00-05:00</updated><id>https://nicole.express/2026/not-my-casual-hobby</id><content type="html" xml:base="https://nicole.express/2026/not-my-casual-hobby.html"><![CDATA[<p>I like things that are strange and a bit obscure. It’s a habit of mine, and a lot of this blog is to document things I haven’t heard of before, because I wanted to learn about them. I mean, jeez, I’m certainly not writing blog posts about <a href="/2026/put-your-clothes-back-on.html">strip </a><a href="/2026/spooky-ghost-stories.html">mahjong</a> because the people demand it. But I can’t stop seeing misinformation everywhere, and I have to say something. This post is just a rant.</p>

<h2 id="phantasy-star-fukkokuban"><em>Phantasy Star Fukkokuban</em></h2>

<p>This is <em>Phantasy Star Fukkokuban</em>, a Japanese Sega Genesis game released in 1994 to commemorate the release of <em>Phantasy Star IV</em> by re-releasing the original. It has an interesting component: it is the Master System game, just packaged into a Genesis cart. The PCB wires the Genesis lines the same way your Power Base Converter would. My guess is the reason for this is because the Master System wasn’t very popular in Japan, and <em>Phantasy Star IV</em> tied together the whole series with a lot of tiebacks to the first one in particular.</p>

<p><img src="/assets/img/2sega/fuk.jpeg" title="You know, Sega could've included the FM soundtrack, if they had shelled out for a YM2413 in the cart" alt="Phantasy Star Fukkokuban, which uses the Phantasy Star box art on a Japanese cartridge shell." /></p>

<p>As a Master System game disguised as a Genesis one, this game is technically interesting. Some Genesis consoles can’t play Master System games, and those ones can’t play this game either. Also, I love the <em>Phantasy Star</em> series; even if 2 is my favorite. This makes this cartridge a perfect subject for my interest, so I’ve talked about it before and will talk about it again. In fact, I have a post I’m working on where I mention it.</p>

<p><img src="/assets/img/ai-is-bad/ps1987.png" title="taken on my mega drive 2" alt="Phantasy Star title screen. (C) SEGA 1987" /></p>

<p>So there I was, writing a blog post, and wanted to look up the release date. The first result I found in DuckDuckGo, my search engine?</p>

<p><img src="/assets/img/ai-is-bad/results.png" title="all results are personalized these days I assume" alt="DuckDuckGo search results. First, GameFAQs. Second, TCRF. Third, Press Start Gaming. An abandonware site is at the bottom" /></p>

<p><a href="https://gamefaqs.gamespot.com/genesis/570415-phantasy-star-fukkokuban">GameFAQs</a> is at the top; a titan since the 1990’s. The second result is <a href="https://tcrf.net/Phantasy_Star">The Cutting Room Floor</a>, a wiki much beloved by myself. And then the third result is <a href="https://pressstartgaming.com/phantasy-star-fukkokuban-a-classic-reimagined/">“Press Start Gaming”</a>.</p>

<p><img src="/assets/img/ai-is-bad/start.png" title="finally, a console for my horrifying NES-Genesis hybrid" alt="Welcome to Press Start Gaming, your ultimate destination for gaming and tech enthusiasts! Founded with a passion for exploring the ever-evolving worlds of gaming and technology, we aim to deliver high-quality reviews, insightful articles, and the latest industry news to help you stay informed and inspired. Whether you’re a casual gamer, a tech aficionado, or a seasoned pro, we have something for everyone." /></p>

<p>And here’s a thing about me. I want to trust new websites. I have a bias towards clicking on articles from sites I don’t know, because to be quite honest, I’ve read the TCRF page on <em>Phantasy Star</em> a thousand times. How else do you learn something new?</p>

<p><img src="/assets/img/ai-is-bad/ps1988.png" title="ALSO taken on my mega drive 2! what a twist" alt="Phantasy Star title screen. (C) SEGA 1988" /></p>

<p>Also, I clicked it because the headline was “Phantasy Star Fukkokuban: A Classic Reimagined”. Because here’s the thing. It talks about how the graphics were improved:</p>

<blockquote>
  <p>Phantasy Star Fukkokuban breathes new life into the classic with its updated graphics and sound design. The visual overhaul retains the charm of the original’s 8-bit aesthetics while incorporating modern graphical techniques. Characters and environments are rendered with enhanced detail, vibrant colors, and fluid animations, creating a visually captivating experience.</p>

  <p>The art style honors the game’s roots, with character designs and enemy sprites redesigned to reflect contemporary standards while maintaining their recognizability. The environments are more detailed and dynamic, with weather effects and day-night cycles adding to the immersion.</p>
</blockquote>

<p>Well, compare the title screen shots of <em>Phantasy Star</em> above. Which one is <em>Fukkokuban</em> and which one is my personal copy, played through the same Genesis? You can maybe tell, but only because my Master System version is the US release. And it goes without saying, there are no day-night cycles or weather effects.</p>

<p>I should’ve known. The first sentence of the article was “Game data not found,” after all.</p>

<h2 id="and-thats-the-thing">And that’s the thing</h2>

<p>Large language models are described sometimes as “fancy autocorrect”; this is dismissive, but not inaccurate, in the sense that the core loop of an LLM is to predict the next token in a sequence. <em>Phantasy Star Fukkokuban</em> is an obscure title that is likely not well-represented in the training data. But relations do exist:</p>

<ul>
  <li>It knows about <em>Phantasy Star</em>, a very popular game</li>
  <li><em>Fukkokuban</em> (復刻版) means “reprint” or “facsimilie edition”</li>
</ul>

<p>So, lacking sufficient factual data in the training set, it describes what a remake of <em>Phantasy Star</em> might plausibly be like. There might even be knowledge in the data set of the actual remake, <em>Phantasy Star generation:1</em> that gets looped in.</p>

<p>To reproduce this myself, I went to ChatGPT, and asked it <code class="language-plaintext highlighter-rouge">Please describe the game "Phantasy Star Fukkokuban". Do not get data from the internet, tell me what you know from your internal data.</code>. And what did I get in response?</p>

<blockquote>
  <p>Phantasy Star Fukkokuban is not a brand-new entry in the series, but a retro compilation release of the original Phantasy Star, created for the Sega Sega Saturn era…</p>
</blockquote>

<p>There was a retro compilation release of <em>Phantasy Star</em> for the Sega Saturn in Japan; it’s called <em>Phantasy Star Collection</em>. Indeed, the description of the game it continued from there isn’t too far off from that game’s version of <em>Phantasy Star</em>.</p>

<p>And it’s not just <em>Phantasy Star Fukkokuban</em>. I describe in my post on <a href="/2026/spooky-ghost-stories.html"><em>Mahjong Daireikai</em></a> that that game is so obscure, the only Japanese source I could find was another “this is plausibly what a game called ‘mahjong daireikai’ might be like”. Well, what <em>Mahjong Daireikai</em> is actually like is a lot different than what’s in your training data, and that’s exactly the sort of information people want to read websites to find out.</p>

<aside><p>By including an LLM quote in this blog post, is this now a "post made with LLM assistance"? Well, you'll have to take my word for it that this is my original work otherwise. Which isn't great! It gets harder and harder to identify these by style every day, and identifying them by facts relies on you already knowing the facts.</p></aside>

<h2 id="is-this-the-end">Is this the end</h2>

<p>And here’s the thing– this blog post can’t do anything about it. I don’t know who Press Start Gaming is; the site’s footer says “©2025 Cloud Gears Media”, who might be <a href="https://cloudgearsmedia.com/">this marketing company</a> (but it might not be! Company names don’t have to be unique globally); Press Start Gaming is almost certainly a tool for making money off of ads and sponsored posts, and posts like the <em>Phantasy Star Fukkokuban</em> misinformation exist mostly to give the site more juice of looking like a real website. If someone goes out and buys a copy of <em>Fukkokuban</em> expecting a new and improved <em>Phantasy Star</em> with better graphics and new sidequests, what do they care? The article wasn’t really meant to provide information.</p>

<p>The trampling of the internet with SEO-mongers predates AI, but what LLMs do is massively increase the ease it can be done, and also hallucinate a ton. If they hired a person to write about <em>Phantasy Star Fukkokuban</em> for pennies, maybe that person would’ve found the <a href="https://segaretro.org/Phantasy_Star#Phantasy_Star_Fukkokuban">Sega Retro</a> page or something and at least grabbed some facts. Now you don’t need to do even that. And no one making these decisions reads <em>Nicole Express</em>, or even cares about actually providing information with their sites. That’s not what they’re for.</p>

<p>Anyways, eventually models will do a better job integrating <em>Nicole Express</em>, and will know more information about <em>Phantasy Star Fukkokuban</em>. And is this the worst thing the AI boom is doing? <a href="https://www.aol.com/news/naacp-threatens-sue-musk-xai-233138040.html">No,</a> <a href="https://www.yahoo.com/news/articles/groups-threaten-suit-over-xai-223759493.html">not</a> <a href="https://www.cnn.com/2025/08/26/tech/openai-chatgpt-teen-suicide-lawsuit">even</a> <a href="https://www.reuters.com/world/us/americans-fear-ai-permanently-displacing-workers-reutersipsos-poll-finds-2025-08-19/">close.</a> Even the <a href="https://theshamblog.com/an-ai-agent-published-a-hit-piece-on-me/">fully automated hit piece</a> against an open-source developer is probably worse than this.</p>

<p>But it’s a real shame. The commons of the internet are probably already lost, and while I might want to learn new things from new sites, I’ll just have to stick to those with pre-LLM reptuations that I trust. Well, until those sites burn their reputations to make a few extra pennies with AI, like <a href="https://mastodon.gamedev.place/@xot/116065688012051690"><em>Ars Technica</em></a> seems to just have. (link goes to a Mastodon thread in lieu of a better source for now)</p>

<p>This post is just a rant. Thanks for listening, at least.</p>

<aside><p>And if your answer is to just say "Um, Nicole, you could <i>never</i> trust the internet, people could tell lies or even just honest mistakes about topics, you do it all the time", please try to understand the point I'm trying to make beyond just a reading of the headline.</p></aside>

<p><strong>UPDATE 2/15/2026</strong> <a href="https://arstechnica.com/staff/2026/02/editors-note-retraction-of-article-containing-fabricated-quotations/">Ars Technica</a> has admitted the article had fabricated quotations and has retracted it.</p>]]></content><author><name></name></author><category term="games" /><category term="info" /><category term="rant" /><summary type="html"><![CDATA[I like things that are strange and a bit obscure. It’s a habit of mine, and a lot of this blog is to document things I haven’t heard of before, because I wanted to learn about them. I mean, jeez, I’m certainly not writing blog posts about strip mahjong because the people demand it. But I can’t stop seeing misinformation everywhere, and I have to say something. This post is just a rant.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nicole.express/assets/img/ai-is-bad/ps1987-2.jpeg" /><media:content medium="image" url="https://nicole.express/assets/img/ai-is-bad/ps1987-2.jpeg" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>