Negative Charge
banner
negativecharge.bsky.social
Negative Charge
@negativecharge.bsky.social
Retro-musician, 8-Bit, 6502. Mainly creating music drivers, players and conversion tools from 8 & 16-bit sound chips to the BBC Micro’s SN76489 and Acorn Electron’s ULA.

⎍∧∿⩘
I've released a beta of the first BBC Micro David Whittaker Music Disk here: www.stardot.org.uk/forums/viewt...

Looking to get some feedback on compatibility with real hardware before I publish the final version to my website. Still may be one or two small bugs to fix.
September 28, 2025 at 5:34 PM
I now have the ability to use 16kb of main memory if no SWRAM is present on the device, so those without at least get to hear songs that fit into that space and partial songs from those that don't. This also works for songs where you don't have enough SWRAM banks to fit the whole track.
September 22, 2025 at 4:19 PM
Getting closer to releasing a whole batch of music disks I've put together for the BBC Micro. Spending some time on cycle-optimising the music driver as even two or three cycles make a difference when called in the main play loop. At the moment it requires SWRAM - about to fix that...
September 14, 2025 at 9:49 AM
Here's a hint where I'm going with this sample sequencer. I've moved the playback loop to zero page and leave the WE (write enable) active which allows output of 16kHz samples (although memory becomes an issue). Need to combine this with my SN76489 conversion of the SID.
September 13, 2025 at 9:44 AM
Just a little something I'm working on. This is RLE encoded for fast playback, but I'm sure I can compress the samples better to fit more in memory / SWRAM.
September 8, 2025 at 7:47 PM
August 31, 2025 at 6:26 PM
Some further progress! The ROM version of Speech! is now working on the Acorn Electron. The speed difference, and hence the quality of the sound, is quite dramatic.

Hopefully that's the whole disk and demo programs converted now. I'll package this up properly and post a link on Stardot.
August 19, 2025 at 4:48 PM
Acorn Electron Speech!

Here’s a work in progress build for you all to try on @0xc0de.bsky.social ’s excellent emulator.

Not sure the SWRAM version works yet, so load option 1, then CHAIN “DEMO” or reboot the disk.

0xc0de6502.github.io/electroniq/?...
Electroniq
Acorn Electron emulator
0xc0de6502.github.io
August 16, 2025 at 9:57 AM
Getting better... here's the official Speech! demo converted to Mode 6 on the Acorn Electron. This is still just using main memory. No speed up from SWRAM yet.
August 13, 2025 at 8:45 PM
Well... it sort of works 😊

A lot of optimization needed, but I have a full disassembly that compiles to a byte identical binary and is relocatable. Speech! on the BBC Micro uses 4-bit values for attenuation, which I have to reduce to 1-bit on the Acorn Electron so quite a bit of fidelity is lost.
August 12, 2025 at 7:50 PM
A release soon 😊. Still finding uninitialized memory bugs causing random crashes... but getting there...
August 2, 2025 at 6:57 AM
So, three double sided disks of tracked music conversions to the BBC Micro's SN76489 are ready. Just testing that I've fixed the random crash in the player when switching tracks, and then I'll put them up on my website. Works on both Model B and Master, but requires several banks of SWRAM.
July 13, 2025 at 3:25 PM
I've always wanted to put together a simple demo effect with some background music. I've never got around to this until now. Probably the most basic Sinus Scroller you'll see, with character based positioning. Hopefully I'll improve this over time and use bitmaps. Might even add a starfield :-)
June 30, 2025 at 4:26 PM
Back in 1987, Your Sinclair published a type-in listing by Tim Follin titled Star Tip 2. It was a 1-bit beeper tune. Recently David Given ported this to 6502 assembler for the Commodore PET. Hence porting this to the BBC Micro was straightforward. It's not perfect, but I'll continue to tune it.
June 21, 2025 at 9:06 AM
I'm back looking at 1-bit music engines again as I want to port a few others over from the Z80. First I thought I'd revisit the SquatM engine and see if I could optimise it. The first improvement was to get the sound playing on all three tone channels of the BBC Micro's SN76489.
June 16, 2025 at 4:55 PM
An SN76489 conversion of a new @h0ffman.bsky.social track from @gordon.plus's Oric demo, No Sleep 'Til Budleigh - 2nd in Old School Demo at Nova 2025.

As this was converted via the Euphoria emulator in DOSBox, it won't sound 100% accurate (easier to convert .pt3 files). demozoo.org/productions/...
June 15, 2025 at 7:25 PM
Another bug squashed, and now the player is working consistently on the BBC Micro and BBC Master without screen corruption or crashing. Need to soak test it for a few hours, but close now to releasing two double sided music disks of demo scene conversions.
June 10, 2025 at 7:43 PM
A few more fixes so the player navigation is stable. Hopefully I can get to a point where I can release some music disks of demoscene conversions soon.

Here's another SN76489 conversion you may be familiar with...
June 9, 2025 at 7:06 PM
Back to working on my BBC Micro SN76489 music player. Squashed a few bugs... introduced a few new ones 😊

Made some useful optimisations on the LZSS decoder which saves a number of cycles every frame.

Here's a track that may sound vaguely familiar...
June 8, 2025 at 7:01 PM
A work in progress. Can't leave the enhanced version of Elite on the Electron without music ;-)

Using the original MIDI tracks by Aiden Bell as the source: www.dream-ware.co.uk/elite/music/

Difficult to compress into a single channel with no volume control!

0xc0de6502.github.io/electroniq/?...
May 31, 2025 at 9:32 AM
I’ve been working on more sound chip file format tools and this one’s just about ready for its first release. It converts ZX Spectrum .AY files (AY-3-8912 only… not beeper) to separate Atari YM6 .ym files. I have another converter I’ll release soon from YM to VGM.

github.com/NegativeChar...
GitHub - NegativeCharge/ay2ym
Contribute to NegativeCharge/ay2ym development by creating an account on GitHub.
github.com
May 19, 2025 at 7:56 PM
Here's a very early preview of the output from my Amiga MOD to SN76489 converter. The basics are there (most of the effects), but a lot is still incorrect... playback is too slow, FFT detection of tone versus percussion isn't 100% accurate, and there's no attempt to emulate drums. But, it lives...
May 5, 2025 at 4:31 PM
An early preview of a new Amiga MOD to SN76489 PSG converter I'm working on. No sound on this video, but the output so far is better than I expected despite not using the sample data at all. Next step is to do some basic FFT to determine percussion from tones.
May 3, 2025 at 2:38 PM
Home Arcade is a brilliant new album from LukHash, and the pre-order came with two bonus C64 SIDs and an Amiga MOD.

Now listening to SN76489 conversions of those SIDs on the BBC Micro 😎
May 3, 2025 at 9:29 AM
The basis of another converter created.... this time MIDI to SN76489. It handles type 0 and 1, and has pretty much managed everything I've thrown at it. Even has rudimentary ADSR simulation. Opens up a huge range of tracks I can now playback on the BBC Micro... well 4 of the channels anyway.
April 13, 2025 at 2:45 PM