toddtmw Posted June 3, 2017 Share Posted June 3, 2017 Anyone ever thought about whether this would even be possible? The 2600 seems pretty low end from a resource standpoint. What does the 2600 have that A8 doesn't have? 2 Quote Link to comment Share on other sites More sharing options...
+DrVenkman Posted June 3, 2017 Share Posted June 3, 2017 Anyone ever thought about whether this would even be possible? The 2600 seems pretty low end from a resource standpoint. What does the 2600 have that A8 doesn't have? A TIA chip, a 6532 RIOT and an entirely different system architecture. Quote Link to comment Share on other sites More sharing options...
toddtmw Posted June 3, 2017 Author Share Posted June 3, 2017 Yeah, but that's what EMULATION is for! [emoji3] Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted June 3, 2017 Share Posted June 3, 2017 Forum search? 1 Quote Link to comment Share on other sites More sharing options...
Bryan Posted June 3, 2017 Share Posted June 3, 2017 Yeah. Not really possible with software alone. The A8 is only a little faster than the 2600 which leaves nothing for all the real-time hardware simulation that would have to happen. Basically, you could watch the A8 slowly draw 2600 scan lines. 1 Quote Link to comment Share on other sites More sharing options...
Keatah Posted June 3, 2017 Share Posted June 3, 2017 You might be able to do something very rudimentary. But nothing approaching the fidelity of Stella. The architecture is just too different. The timing too strict.. And more! Quote Link to comment Share on other sites More sharing options...
+MrFish Posted June 3, 2017 Share Posted June 3, 2017 Here we go again... 2 Quote Link to comment Share on other sites More sharing options...
tschak909 Posted June 3, 2017 Share Posted June 3, 2017 Either somebody is going to come along and do it. Or they won't. It is possible, but it will take some serious engineering, and it will never work 100%. -Thom Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 3, 2017 Share Posted June 3, 2017 In some respects the 2600 PMs are more powerful than the computers - we lose the repeat ability which allows the 2600 to have 6 for the price of 2. What kills the idea more than anything though is the cycle dependant positioning. There's just no easy way to run native 6502 code then detect what cycle offset a register hit takes place on when the hosting machine is less than about 50 times as fast. 1 Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 3, 2017 Share Posted June 3, 2017 From what I've read over the years, and also through personal experience, the lower limit is actually 100x. That is, at minimum you need a machine 100x faster that what is being emulated. So for the 2600, this means a clock speed of over 100MHz. Stella was able to do that in the 486 days, but is no longer able to do so because of all the added features (debugger, etc) that require a much faster machine. But realistically, you're not going to get proper emulation on less than 100MHz, and even achieving that will be hard. 1 Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 3, 2017 Share Posted June 3, 2017 119 MHz gives about 100 cycles per NTSC 6507 cycle. I wonder though, were there any 2600 emus for the PS original? It's RISC and only runs at 34 MHz. There was an 800 emu for the ST, only a 4.5 x speed difference although it probably run at 33% speed at best, wasn't that accurate and probably suffered even worse if complex graphics were needed. Quote Link to comment Share on other sites More sharing options...
Joey Z Posted June 3, 2017 Share Posted June 3, 2017 (edited) From what I've read over the years, and also through personal experience, the lower limit is actually 100x. That is, at minimum you need a machine 100x faster that what is being emulated. So for the 2600, this means a clock speed of over 100MHz. Stella was able to do that in the 486 days, but is no longer able to do so because of all the added features (debugger, etc) that require a much faster machine. But realistically, you're not going to get proper emulation on less than 100MHz, and even achieving that will be hard. Without going into much detail, I'll point out that '100x CPU clock' is absolutely meaningless. a 100MHz 6502 vs. a 100MHz intel i7 would be no surprise when the i7 wins. You have to take into account architectural features like CPU pipelining, caching, out of order execution, and superscalar (multiple-issue meaning multiple instructions start running at the same time). What you could do on a 100MHz 486, you might be able to do on a modern 50MHz ARM CPU (or maybe not, I'm just giving a potentially bad example) Edited June 3, 2017 by Joey Z Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 3, 2017 Share Posted June 3, 2017 I'm well aware of that, and have quite in-depth experience of Stella and its requirements. The original question was could a 2600 emulator be written for an A8 (a similar CPU), and in that context 100x CPU time is the absolute lower limit of what would be needed. And that would be pushing it. And since no A8 had a CPU anywhere near that fast, the answer is no, a fully-compatible 2600 emulator could not be done in such an environment. Stella was also written and ran on a Dreamcast (200MHz CPU), but not very well (and not completely). Similar 'small' systems have been used as well (GP32, PSP, etc), and much effort was required to get them to run with 200-300MHz CPUs. Even on the 486 @ 100MHz, it was still very minimal, not-fully-complete emulation. So while MHz in general doesn't translate well between different architectures, I would still state that 100x minimum really is the absolute minimum. Quote Link to comment Share on other sites More sharing options...
Keatah Posted June 3, 2017 Share Posted June 3, 2017 In real-world usage, a Pentium II 266 - Pentium III 350 runs Stella 2.x or 3.x at full speed. It J U S T B A R E L Y makes it. Quote Link to comment Share on other sites More sharing options...
toddtmw Posted June 3, 2017 Author Share Posted June 3, 2017 I get it. The answer is "No." ? 1 Quote Link to comment Share on other sites More sharing options...
scotty Posted June 4, 2017 Share Posted June 4, 2017 I am just getting my nose into 6502 machine language, so I have no idea.... But how was the ST able to run MAC software faster than the top of the line Mac that was available at the time? I am not talking abut external hardware (Spectre GCR) I am talking all in software (Macic Sac). Just curious...... Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 4, 2017 Share Posted June 4, 2017 The 68000 of the ST runs faster than the ones in the Mac and Amiga by about 1/7th. Other than that, exact same CPU. No requirements for complex code tracking for time critical emulation, lots of what goes on can be just done natively. 68000 is also sufficiently advanced that some things can be trapped and special code ran which can make some emulation tasks easier. Even the PC-Ditto emulation wasn't too bad. Though probably at effectively 20-30% speed of a 4.77 MHz 8086 it's still usable for some applications. Quote Link to comment Share on other sites More sharing options...
phaeron Posted June 4, 2017 Share Posted June 4, 2017 Mac software is also relatively tame -- relocatable code and data, mostly going through the OS to access the hardware, and doesn't care too much if the CPU is 20% faster or slower than it should be. This means that emulators like Magic Sac and A-Max could just patch the Mac OS and tweak the memory map to match the host machine, and well-behaved software could run on the bare metal. You can do this on the A8 -- there was an Apple II emulator that didn't win any awards for accuracy but could run Applesoft BASIC and even some games. Doesn't work with the 2600 where you have games hitting the hardware directly and hardware that requires precise cycle timing to get practically anything on screen at all. 2 Quote Link to comment Share on other sites More sharing options...
+S.D.W. Posted June 4, 2017 Share Posted June 4, 2017 (edited) Then there is this video of a Spectrum emulator (Z80 @ 3.5 MHz) running on an A8 using a Rapidus (65C816 @ 20 MHz) & VBXE... Edited June 4, 2017 by 917k 1 Quote Link to comment Share on other sites More sharing options...
walter_J64bit Posted June 4, 2017 Share Posted June 4, 2017 (edited) The Jag has like 4 2600 emulators if you want run a 2600 emulator on a Atari platform but most of the 2600 emulators on the Jag are broken some dont work, if they did work they never got optimize. Atari dropped the ball on 2600 emulators for the Jag. The Jag could had one cart packed full of 2600 games. Edited June 4, 2017 by walter_J64bit 1 Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 4, 2017 Share Posted June 4, 2017 There was too little effort put into Jaguar software as it was - doing emulators would have just given them an excuse to do even less. Still, it would be interesting to see an emulator done on the computer even if it resulted in a 2 fps slideshow. 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted June 4, 2017 Share Posted June 4, 2017 Anyone ever thought about whether this would even be possible? The 2600 seems pretty low end from a resource standpoint. What does the 2600 have that A8 doesn't have? Great thread topic! I am working on a cross-compiler for BASIC and Assembly games that use the Atari 2600 Flashback BASIC runtime (like PIXELS and KC Monster Maze) to run natively on the A8. This can work because CTIA/GTIA can do pretty much everything TIA can except the mirrored sprites but it's translation and not emulation; given the MHZ direct emulation is not possible but a similar translator for batari BASIC games and classic Assembly games (that don't use sprite mirroring, space invaders is out) should also be possible to build! Quote Link to comment Share on other sites More sharing options...
zzip Posted June 5, 2017 Share Posted June 5, 2017 I am just getting my nose into 6502 machine language, so I have no idea.... But how was the ST able to run MAC software faster than the top of the line Mac that was available at the time? I am not talking abut external hardware (Spectre GCR) I am talking all in software (Macic Sac). Just curious...... Mac didn't really much in the way of custom hardware to worry about. The ST Mac emulators weren't really emulators, but more of what we'd today call a "Virtual Machine" Quote Link to comment Share on other sites More sharing options...
toddtmw Posted July 1, 2017 Author Share Posted July 1, 2017 (edited) Looks like the Vic 20 could play 2600 cartridges!!! This was from the January 1983 edition of Compute! Magazine. Edited July 1, 2017 by toddtmw 1 Quote Link to comment Share on other sites More sharing options...
miker Posted July 1, 2017 Share Posted July 1, 2017 I bet that "loader" is/was something like 2600 adapter for 5200. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.