Search the web
Sign In
New User? Sign Up
electrem · The Acorn Electron group
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
ANNOUNCE: Beta 0.5b of ElectrEm Future (with fixed sound)   Message List  
Reply | Forward Message #572 of 606 |
The title says it all - I've fixed the sound problems in the just updated
ElectrEm and now
the emulator is back to being sufficiently good that the sampled speech in Exile
works
properly. Incidentally, if anybody knows of any other games or programs with
samples or
other high end sound trickery that I can use to check the emulator against then
I'd be
grateful to hear about them.

Other than the sound fix, nothing else has changed - except that I've properly
unified and
tidied the source directory tree and uploaded the latest code with both MSVC 6
and XCode
2.x project files.

Quick file links:

Windows
http://electrem.acornelectron.co.uk/files/future/ElectrEmWin32-20060413.zip
http://electrem.emuunlim.com/files/future/ElectrEmWin32-20060413.zip

Mac OS X
http://electrem.acornelectron.co.uk/files/future/ElectrEm-20060413.dmg
http://electrem.emuunlim.com/files/future/ElectrEm-20060413.dmg

Source Code
http://electrem.acornelectron.co.uk/files/future/ElectrEmSource-20060413.zip
http://electrem.emuunlim.com/files/future/ElectrEmSource-20060413.zip

Now a boring technical description of the problem and the fix for those that are
interested. ElectrEm aims for 100% accurate timing of everything which in sound
terms
means that everytime a sound event occurs (i.e. a change of tone or a sound
on/off
command) it is logged into an event queue. A separate sound processing thread
reads
from the queue and generates a sound wave as and when the host hardware requires
it.
This introduces some latency, but there is no realistic way to avoid that with
an emulator
given the precision of timers and the granularity of allowed process sleep
times.

The problem is that the two threads need to each keep track of their time
separately, as
the thing writing sound to the queue is obviously "in front" of the thing
reading the events
and acting on them. The problem was that the thing reading events was racing
miles
ahead while the thing that would ultimately generate events paused doing other
startup
activities. As a result, instead of stepping through events and properly obeying
the relative
times at which each occurred the thing reading stored events was just doing them
all at
once, believing itself to have advanced beyond all of them.

-Thomas







Thu Apr 13, 2006 10:26 pm

thomasharte
Offline Offline
Send Email Send Email

Forward
Message #572 of 606 |
Expand Messages Author Sort by Date

The title says it all - I've fixed the sound problems in the just updated ElectrEm and now the emulator is back to being sufficiently good that the sampled...
thomasharte
Offline Send Email
Apr 13, 2006
10:26 pm

Ok, in relation to my last message, I have a tape I'm trying to load one specific program from. If I *. It goes round and round in a loop and if I ESCAPE and...
Vince Tennant-Tavares
spindle_legs
Offline Send Email
Apr 16, 2006
1:46 pm

... Any chance of getting a copy of that tape? I seem to be able to reliably recreate the same thing with the Exile cassette from The Stairway To Hell (try...
thomasharte
Offline Send Email
Apr 16, 2006
7:34 pm

It's just the Acorn User Compendium Tape! I don't know if Yahoo groups can have a file attached, so I'd recommend Stairway to Hell :) -----Original...
Vince Tennant-Tavares
spindle_legs
Offline Send Email
Apr 16, 2006
11:52 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help