Re: Source release [Re: SFX Expander programming and VICE]

From: Steve Gray <sjgray_at_rogers.com>
Date: Wed, 25 Jan 2012 11:28:42 -0500
Message-Id: <97FEDC90-1A71-4881-8189-9F46BFD4E78F@rogers.com>
The schematics for the sfx sound expander are available.. If you can't buy one, maybe you could build one? I picked up an old sound blaster with ym3812 and support chip off eBay for about $12, but you could probably buy the chip(s) separately. Get an 8-bit baby prototyping cartridge board and you're good to go ;-)

Steve


On Jan 25, 2012, at 9:58 AM, Gábor Lénárt <lgb@lgb.hu> wrote:

> Hi,
> 
> On Wed, Jan 25, 2012 at 06:37:34AM -0800, andym00 wrote:
>>> Sound Expander in WinVice 2.2 seems to work fine.
>>> 
>>> More SFX Sound Expander stuff, cool, what are you working on Andy?
>>> 
>> 
>> Ah, okay, I'll give 2.2 a go then.. Thanks..
>> 
>> As for what I'm working on, just really ideas at the moment.. I've always
>> wanted to play with the thing and was curious if it was possible to push the
>> timing requirements down a bit, or maybe use a timer based approach to avoid
>> wasting loads of time waiting to send registers, or even piggy back
>> register
> 
> What do you mean? The needed time to wait before you can write a register?
> With the OPL chip, you had to wait a bit after you selected the register and
> before write the actual data and some wait too before you can address
> another register. The needed time for this is quite low, before data/after
> register select is something like four NOPs, so I wouldn't think it's worth
> using timers to wait etc :) There is a bit more delay needed after writing
> the data (and using another register) in my player code it's not a problem,
> since it's far enough delay given by the player code itself :)
> 
> Given by microseconds from the AdLib specification (so it's about the OPL2 -
> YM3812 - chip, I am not sure the very same is true for the YM3526 which is
> the one the cartridge is equipped with, however it seems some people
> upgraded the chip since it's backward compatible):
> 
> The AdLib manual gives the wait times in microseconds: three point three
> (3.3) microseconds for the address, and twenty-three (23) microseconds
> for the data.
> 
> Given by the ~1MHz clock of the 6510 in C64, it's about 4 cycles to wait
> after specifying the address (register selection) and 23 cycles after the
> data. I am not sure why it's told (by more clever people than me) that 4
> NOPs is needed, as AFAIK a NOP lasts for 2 cycles, but there must be some
> reason ...
> 
> Or did you think about the timing needed for playing, not the individual
> register access delays?
> 
>> sends on the back of sprite multiplexer interrupts.. Really just experiments
>> and with it in mind that I'd love to be able to use it for in-game music, if
>> it doesn't prove too costly.. Its always bugged me that no game has ever
>> supported the Sound Expander, yet :)
> 
> I'm playing with the idea to write an S3M player (to be precise: S3M files
> using only AdLib instruments, not digital samples), and a converter too
> which "stripes down" the S3M for a more simple entity in sequence of BYTE
> pseudo-ops in assembly source form, so it can be reused for an in-game
> player engine which can be much more trivial than a fully-capable S3M player
> with its complexity, and can be done in an IRQ routine or so ...
> 
> Still, I lost the interest a bit currently, since it's so sad that I haven't
> got a real cartridge, it's not so fun to do it in an emulator only.
> Currently only my DRO player work (however I have my IMF->DRO converter
> now).
> 
> 
>> 
>> --
>> View this message in context: http://nabble-com-cbm-hackers.2304266.n4.nabble.com/SFX-Expander-programming-and-VICE-tp4107070p4327376.html
>> Sent from the Nabble.com: cbm-hackers mailing list archive at Nabble.com.
>> 
>>       Message was sent through the cbm-hackers mailing list
> 
>       Message was sent through the cbm-hackers mailing list

       Message was sent through the cbm-hackers mailing list
Received on 2012-01-25 18:00:09

Archive generated by hypermail 2.2.0.