New Tutorial: Make a Propeller Synthesizer
Nick McClick
Posts: 1,003
I just put up 2 new tutorials on making audio with the Propeller that you might find useful;
The first covers the basics of audio creation, approaches and circuits. I also review different waveforms & low pass filters.
The second kicks off a 3 part series on building a Propeller synthesizer. The synth generates sounds using SIDcog & has TV output, too. Jeff (OBC) wrote this one and he also did some working on making SIDcog easier to interface (SIDSynth). Part 2 is coming up later this week.
Both include video demonstrations. These new tutorials (and 15 more that Jeff and I have done) are on the tutorials page under 'Make a Synthesizer'.
As usual, let me know if you spot any errors or if anything is unclear!
The first covers the basics of audio creation, approaches and circuits. I also review different waveforms & low pass filters.
The second kicks off a 3 part series on building a Propeller synthesizer. The synth generates sounds using SIDcog & has TV output, too. Jeff (OBC) wrote this one and he also did some working on making SIDcog easier to interface (SIDSynth). Part 2 is coming up later this week.
Both include video demonstrations. These new tutorials (and 15 more that Jeff and I have done) are on the tutorials page under 'Make a Synthesizer'.
As usual, let me know if you spot any errors or if anything is unclear!
Comments
Thanks Nick!
I had a great time creating the Propeller Synthesizer. BIG THANKS to Ahle2 for the awesome SIDcog this is based on!!!
OBC
It's very pedagogically written.
/Ahle2
@John & Ahle - thanks! Jeff does a great job with them.
@humanoido - don't worry, you aren't missing much with the video, it's just a demo of the finished product.
If I combine the synthesis + video + some programming flows from your tutorials,
it becomes: Homemade 8-bit Video Game Set!
I just saw some preview and tutorial videos from your site - looks pretty great.
However, one thing - what old 8-bit system does it based on? The fonts does not look like NES at all, and uh the sounds are from some other systems, maybe mainly Commodore? I would prefer NES because I grew up with the console.
Yes, the Propeller IS a very good "8-bit style" gaming platform.
The fonts you see in both the Propeller Synth and Lightcycles are 8bit fonts based on the Commodore 64. In fact, the "tech" font I used in the Synthesizer was a Commodore font that was converted.
OBC
Thanks for the info. By the way, is it possible for me to port the NES fonts into the video driver?
The sound of the 6582 is warmer and I love the sound of it.
Anyone actually made sound drivers that emulate the NES ones? The Ricoh 2A-03 thing?
Not as easy as 8x8 characters, but you are right, they do look really good.
http://mfs.sub.jp/font.html
OBC
A possibly better choice would be the Dodgey Kong TV driver, or ericball's 8x8 sprite driver.
http://forums.parallax.com/showthread.php?119075-Hydra-NES-Pacman-Emulator&p=871551
It might be possible to convert the emulator code to a useable framework to make new games on the Propeller, instead of just emulating the games. Is that something that you would be interested in? Might be a good project, and if it is something you might want to consider, or help work on, let me know.
--trodoss
Thanks for the link. I do not want to emulate the games since it is uh.. tedious, and also copyright issues (the ROM of the game/application are usually discouraged). Not to say that I want to reinvent the wheel, I love to combine whatever libraries available and make an NES-reminiscent system out of it.
I'm wondering - the NES systems don't have a microcontorller. It has a CPU inside, being assisted with the external PPU, and the ROM is at the cartridge.
So, if I use the Propeller (as a CPU, PPU, sound) and then plug an EEPROM (Game ROM catridge), would it work? Or must I create a boot-loader in the system first?
If you had a cartridge interface (see something like: http://benheck.com/Downloads/NES_Famicom_Pinouts.pdf for the pinout), and you were able to address the EEPROM on the cartridge, it would be a matter of "feeding" your hardware emulation the code (probably having to emulate accurately the NES's timing).
[Edit:]
To fully support all the NES/Famicom games you would need to expand on Darryl's emulator code though. I haven't looked at that code in a long time, however I know that there were some caveats that were given about the emulator.
Boot loaders with SD are nice though. Recommend one. It's nice to have stuff just at the ready when you fire up the Prop. I've a coupla little programs I like to run, and usually just turn the system on, then select them.
As Potatohead said, it would be easier to use an SD card rather than an EEPROM cartridge, and bootload off of the SD card.
For "game console" style interfaces there is a bootloader for the El Jugador (a Propeller Platform module), and JT Cook wrote a bootloader for games on the C3. Either of these could be converted for whatever hardware you actually have.
@Nick,
Sorry about the thread drifting off topic...
The one in my blog http://forums.parallax.com/entry.php?76-Some-tile-art... is worth a look. There are sample images and command work-flows and a sprite test. It's powerful as all get out, and it renders in all the colors, and the sprites have transparency.
I've got a UFO! port in progress. Got stalled over Bean's basic, but I'll return to it. Since drivers were being mentioned, I thought this one would deserve a plug.
Also seriously considering adding Eric's Apple ][ style TV driver to it. That one does nearly 256 colors NTSC, and it's a new color space! Hasn't seen use yet, but it should. One could do old school bitmap graphics on it, being careful about buffer space.
Yes - that may be what I'm preferring. Quick and easy. But should we need some more RAM outside the Propeller too?
If needed to continue the conversation without drifting out of the topic, hop in over to the thread.