iCP2: They're throwing in the towel.


ZXDunny

Deep avatar
Joined
Oct 12, 2010
Messages
2,585
I like how a genuine microcontroller really can handle as something as low end as ZXSpectrum emulation, assuming they can get by without extremely high accuracy.
This is being developed by the guy who literally wrote the book on the Spectrum ULA - extremely high accuracy (as in 99% taking into account the one remaining unknown z80 flag operation on certain instructions) is the least of our expectations.

This thing sold out within 2 days of funding starting, and is now being sold on a pre-order basis for £150 a pop - a markup of 50% and it's still selling like hot cakes.

D.
 

Exophase

Nothing good will ever come of Exophase.
Joined
Sep 21, 2006
Messages
10,307
Age
39
Location
Cleveland OH
This is being developed by the guy who literally wrote the book on the Spectrum ULA - extremely high accuracy (as in 99% taking into account the one remaining unknown z80 flag operation on certain instructions) is the least of our expectations.
Accuracy is a really broad subject. Getting all the discrete results of operations correct is one thing, getting all of the nuances of timing correct is something else. It's not just a matter of knowing how everything works but being able to still emulate it perfectly on a microcontroller.

Then there's fuzzy stuff like mechanical drive timing. I wonder how good of a physical model it really has? I don't think you can really make this "perfect."
 

ZXDunny

Deep avatar
Joined
Oct 12, 2010
Messages
2,585
This is being developed by the guy who literally wrote the book on the Spectrum ULA - extremely high accuracy (as in 99% taking into account the one remaining unknown z80 flag operation on certain instructions) is the least of our expectations.
Accuracy is a really broad subject. Getting all the discrete results of operations correct is one thing, getting all of the nuances of timing correct is something else. It's not just a matter of knowing how everything works but being able to still emulate it perfectly on a microcontroller.

Then there's fuzzy stuff like mechanical drive timing. I wonder how good of a physical model it really has? I don't think you can really make this "perfect."
Mechanical drive timing? You mean the tape deck? :)

Seriously, we've been emulating the z80/ULA combination at 99% accuracy for years at a software level - there isn't any software available now that can tell the difference between a 48k/128k Spectrum and an emulator. The aforementioned remaining CCF flag affector is unreliable and changes between z80 manufacturers... Timing is measured in T-States, and current emulators are now accurate to 1T accuracy, and you really can't get any lower than that. And the only instance of a 1T difference between machines is in the ULA frame start period and depends on how warm the Spectrum is - and we emulate that too.

Edit: We also emulate DRAM refresh (and the corresponding fade in the RAM chips if the refresh is witheld) too - and that's about as extreme as we go.

D.
 
Last edited by a moderator:

Exophase

Nothing good will ever come of Exophase.
Joined
Sep 21, 2006
Messages
10,307
Age
39
Location
Cleveland OH
Mechanical drive timing? You mean the tape deck? :)
That would be a mechanical drive, yes. There also appears to be a floppy disk. I remember trying to model the timing of the CD drive in PCE-CD (based on some test data), and was frustrated at how difficult it was. Of course there's no such thing as perfect since the timing is not in discrete units, and real performance will vary from drive to drive within some tolerance (which will vary due to environmental conditions, aging, etc), but at the same time it still has to be right enough or some games won't work. You wouldn't think such games would be so sloppy but badly written games are good at finding ways to unintentionally rely on very particular behavior, or maybe I should say they're good at accidentally working. No idea how much this is true with Speccy games though.

Seriously, we've been emulating the z80/ULA combination at 99% accuracy for years at a software level - there isn't any software available now that can tell the difference between a 48k/128k Spectrum and an emulator. The aforementioned remaining CCF flag affector is unreliable and changes between z80 manufacturers... Timing is measured in T-States, and current emulators are now accurate to 1T accuracy, and you really can't get any lower than that. And the only instance of a 1T difference between machines is in the ULA frame start period and depends on how warm the Spectrum is - and we emulate that too.

Edit: We also emulate DRAM refresh (and the corresponding fade in the RAM chips if the refresh is witheld) too - and that's about as extreme as we go.
99% accuracy isn't quite the same as 100% though :) And of course I have no doubt that very, very accurate emulation has existed for a long time now. I just wondered how much overhead it takes to get that level of accuracy, even with very clever implementations. I might be overestimating the demand based on what I'm used to with consoles where graphics and sound chips have relatively complex state machines and all of the components interact with each other in complex ways. ZXSpectrum may be simpler than that (if the huge number of clones are any indication), and if you only have to worry about tightly timing the CPU and stuff like DRAM refreshes then yes, a microcontroller may suffice. What I'm thinking about is things like having to capture exactly how the graphics chip accesses memory (running a state machine that is often a lot faster than how the CPU processes instructions) in order to properly emulate delay cycles added due to contention between it and the CPU. Or worse, something like multiple CPUs sharing memory, or emulating cache and writeback timing (or worse, doing both). Now from what I can see, ULA and Z80 does have contention in accessing VRAM, but the access patterns seem more fixed and straightforward than some other platforms I'm thinking of, since video is not much more than a framebuffer.

Let's just say, if you were trying to do an NES emulator that was very close to perfectly accurate (based on the extensive reverse engineering done on the NES), you'd have a very hard time doing it on a microcontroller. Especially something that's not a high end ~200MHz Cortex-M4, M7, or microAptiv or whatever, but more mid-range like a 72MHz Cortex-M3 or something. But if you think this is pretty doable for ZXSpectrum I'll take your word for it. On the other hand, if very very few games rely on such incredible accuracy it might not really matter very much. I guess you guys will get to see how good it is with tech demos.
 
Last edited by a moderator:

vcoleiro1

Hardcore Member
Joined
Jan 23, 2011
Messages
4,685
And finally the ICP2 KS comes to a sad completion for me

Just got this along with the Paypal notice:

"We've refunded your PayPal account $27 in place of the iControlPad2 pledge.  Thank you for backing the project, we apologize again that it didn't go as planned."
 
Last edited by a moderator:

ramboky

Active Member
Joined
Jun 5, 2013
Messages
262
"We've refunded your PayPal account $27 in place of the iControlPad2 pledge.  Thank you for backing the project, we apologize again that it didn't go as planned."
"Didn't go as planned"? That's a bit of an understatement. "You all got ripped off by my business partner" would be more accurate. Still, I'm glad it's over. I can't help but wonder what Craig's next disaster will be though.
 

Mr_Loon

Can't Remember
Joined
Aug 30, 2010
Messages
2,332
Got the refund, many thanks Link for your efforts to sort this mess out to the best of your ability.

Decided to spend the refund money on the Steam Sale.

So far so good.

Prison Architect for £3.99
Castle Crashes for £0.99
Astebreed for £3.29

 
 

fusion_power

Advanced Member
Joined
Dec 25, 2005
Messages
13,219
Location
germany
Website
Visit site
Yet another failed KickStarter, this time from one of the big hitters in the industry.

http://www.digitiser2000.com/main-page/for-godus-sake-molyneux-accused-of-over-promising
That wasn't actualy a surprise, at least not for me. His best times are over and the last game from Molineux I've played was "Black& White". Which was basicly the same hype story with not much more than hot air in the end. Very disappointing game (for me), good ideas done wrong. History is repeating as usual.
 

WizardStan

Mega GP Mania
Joined
May 24, 2008
Messages
16,731
Yet again why developers need project managers to keep them on task. Everyone thinks they can deliver the moon.
 
Top