Sunday, August 23
11 Bit Edition
- As mentioned in the comments on yesterday's post, I did a very quick benchmark on a minimal CPU emulator in Python. On standard Python I got about 3 MIPS, which is more than a 1983 computer would deliver, but not nearly enough when I take into account also emulating the graphics, sound, and I/O chips. (Plus the fact that it will certainly slow down once I handle things like precisely setting the bits in the F register after every operation.)
Same code in PyPy ran at around 200 MIPS. So that's how I'll build the prototype. If that's successful, the real version will be... I don't know. Maybe Nim? Crystal if they get Windows support working?
I'll see if I can implement it once with options for anything from 9 to 13 bits. I want to have more than 64k directly addressable (without segments or bank switching) but still have somewhat realistic limitations.
9 bits is pretty good there, since that lets you have something very similar to the Commodore 128, but with all the RAM and ROM immediately accessible with no fussing about.
Also updated the imaginary architecture after checking and discovering that the cycle time for 120ns RAM was 220-230ns, not 200ns as I'd half-remembered.
I'd wanted a 5MHz clock because that works out neatly for the video resolution I have in mind, but that now seems infeasible for a home computer of that period. The idea instead is that rather than using a 200ns memory cycle, it would have used a 400ns memory cycle but used page mode to read two sequential words in certain modes, including the critical video updates.
The Amiga 1200 used this trick, keeping the same bus cycle as the original Amiga but reading two 32-bit words at a time instead of one 16-bit word.
I looked up the instruction and memory timing of the 6502 to make sure I'm being reasonable with my new 2.5MHz fictional CPU, and it turns out that thing was fucking weird. (Xania.org) The 6502 accesses memory on every cycle even if it doesn't yet know what address it wants to read or what value it needs to write. That means that it will sometimes read the wrong address first, and then the correct one, or write the wrong value followed by the correct one.
Since that article is discussing the creation of a cycle-accurate emulator for the BBC Micro, and that's an interesting and powerful 8-bit system that I'm not very familiar with, I did some reading on the specifics of its hardware.
Turns out... It had a 250ns memory cycle. In 1981. A 2MHz 6502 which as we just noted accesses memory on every cycle, and interleaved access by the video controller with no interference or wait states on either chip.
The Wikipedia article notes that the system needed one specific multiplexer device from National Semiconductor to handle this, and compatible parts from other companies didn't work. They shipped 1.5 million units without ever figuring out why.
Reading up on the BBC Micro gives me a specific goal, though: This design should be able to run a game like Elite in shaded rather than wireframe mode. Even if it's generally less powerful than the Amiga, it needs to be able to do that.
- The nearest star-like-object (SLOB) system to ours is still Alpha Centauri. How dull.
After that it's the roundabout at Barnard's Star, and then Luhman 16, a brown dwarf binary discovered in 2013.
I mention this because a team of volunteers has discovered 95 more nearby brown dwarfs (Space.com) including one with a surface temperature of -23C which is rather chilly for a star, even a failed one.
- Apple has kicked the Wordpress iOS app out of the App Store for not providing non-existent in-app purchases. (The Verge)
The Wordpress iOS app is a generic app for the Wordpress API. The source code is all GPL. It offers no in-app purchases via the App Store or otherwise, but was banned anyway.
- Intel is working on 224G PAM4 transceivers. (AnandTech)
And also on 112G NRZ transceivers - 112G exists now, but currently uses PAM4.
This new generation would work for PCIe 8.0. PCIe 3.0 which most of us are still using runs at 8G. PCIe 2.0 ran at 5G but used inefficient 8b/10b encoding; PCIe 3.0 is much more efficient so at 8G it is about 98% faster than 2.0.
(USB 3.1 gen 2 does the same thing with encoding but actually does double the clock speed, so it is around 2.4x the speed of USB 3.0.)
This new standard would deliver the equivalent of a full x16 PCIe 4.0 slot with just four pins.
Or to put it another way, a PCIe 8.0 x16 slot could read the entire 64k system RAM of my imaginary computer in around 150ns.
- Microsoft Flight Simulator 2020 is out and it requires all the hardware. (Guru3D)
You'll need the fastest CPU and graphics card you can find, 32GB RAM, and 150GB of available SSD storage. And a fast internet connection if you don't want to be waiting for literal days while it downloads, because that 150GB is the initial install size.
Got all that? Well, with your 9900K and RTX 2080 Ti you'll get 51 FPS at 1080p.
Unless you decide to visit New York, in which case frame rates will plummet to about a third of that.
Posted by: normal at Sunday, August 23 2020 05:01 AM (obo9H)
It always annoys me that I could never play Elite, despite having the game in the box, with the manual and the excellent novella written by the late Robert Holdstock (And which was promised a sequel with Elite Dangerous, but I have never seen hide nor hair of that.), because I was missing the freaking plastic view-screen that was required for the copyright protection. I still have everything from the box sitting around somewhere.
Posted by: cxt217 at Tuesday, August 25 2020 04:22 AM (4i7w0)
Posted by: Pixy Misa at Tuesday, August 25 2020 10:04 AM (PiXy!)
Elite Plus might have only been released on DOS, which is something I can confirm as having actually seen the boxed game in stores (Back in my younger days, along with copies of the first Gold Box AD&D games set in Dragonlance.), and once having seen it available for download from Ian Bell's website. The latter was particularly interesting because among the files Bell had was a legal document regarding the court settlement between Bell and David Braben. Sadly, my copy of that download went kaput sometime ago.
Posted by: cxt217 at Thursday, August 27 2020 05:02 AM (4i7w0)
58 queries taking 0.497 seconds, 342 records returned.
Powered by Minx 1.1.6c-pink.