[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
To mock a killing bird...
- Subject: To mock a killing bird...
- From: BLuRry <brendan.robert@gmail.com>
- Date: Mon, 20 Aug 2012 18:16:53 -0700 (PDT)
- Complaints-to: groups-abuse@google.com
- Injection-info: glegroupsg2000goo.googlegroups.com; posting-host=70.123.154.97; posting-account=HyIOQgoAAAAfAUGOevdCSBhPYcDSPtM9
- Newsgroups: comp.sys.apple2
- Organization: http://groups.google.com
- User-agent: G2/1.0
Hey!
Jace now has Mockingboard support working without timing issues! I have not put up a downloadable copy yet though. I have an odd bug that I'm trying to resolve with it, but the gist of it is that you can play the Ultima V soundtrack and the tempo is SPOT-ON. There is an occasional 1/4 second pause in the sound when the emulator and the sound playback sync up from time to time, but it doesn't tend to interfere with the experience too much. I think it's a general timing issue, not specific to the Mockingboard, but I'm not going to worry about it today.
Even though Phasor support was written into the code base, it does not seem to work well at all. I'm not quite sure what to make of it but hopefully once the dust settles I can try to rip through the code and figure out why the registers are getting funky data. Trying Phasor in Ultima V sounds absolutely terrible.
Some things I did try were to put a Mockingboard and a Passport MIDI card in at the same time. This produced a rather interesting syncopated version of the tune played both in square waves and midi synth in synch with very little drift. It's not perfect, but it could at least earn an A- on a computer science exam. ;-)
There are a couple of startup issues that I need to resolve before I release a new build of the emulator, but it should be with less than a week hopefully. I just need to clean up some kludgy last-minute things in the code that are causing minor hiccups.
The funniest part about this feature is that it is the first feature of Jace to have been written. Before the CPU. Before the memory or MMU. In fact, the original plan for Jace was to be a sort of mockingboard tracker. The CPU emulation was only supposed to stand up a limited sort of replayer routine. But then I made a primitive video routine and couldn't stop once I had Applesoft basic running. I guess it goes without saying that the rest was downhill from there.
I'm just glad to see it working for once. It's a very pretty and clean take on AY emulation, and it lends itself very nicely to building other synth engines later on down the line. The 6522 VIA implementation is also very reusable so that other devices based on it are easy to put together. This may not make much of a difference in Jace as it is today.
But it does make other emulators a lot more possible. :-D I hope someone finds the code useful in that regard some day.
-B