676

(13 replies, posted in Sinclair)

Crossing another item off my to-do list, which has been on there for an awful long time.

This is just a little experiment to demonstrate that it can be done. I have no intentions of developing this into a full sound driver at the moment, mainly because I'm totally sick of writing these XM converters.

The beeper part is basically a simplified version of Squeeker with 3 channels and variable duty cylces. The AY part is very basic, just tones and software-generated envelopes. Noise is certainly possible, I was just too lazy to implement it. Perhaps buzzer could be done as well, after all it's just copying the values from the envelope register to a volume register, right? Anyway, check out the source code for inspiration, if you like.

677

(20 replies, posted in Sinclair)

Thanks mate, glad you like it!

678

(17 replies, posted in Sinclair)

For me, even having to fiddle with FM or SID is already too much. I love the sounds these things make, but every time I try to compose something on these I get lost in the endless realms of sound design hmm

679

(20 replies, posted in Sinclair)

No fancy samples and sh*t this time - just finally finishing off a project that has been on my to-do list for the longest time: A remake of zilogat0r's Squeeker engine! Various cool features added, quoting the readme:

- 4 tone channels, mixed PFM/PWM synthesis
- 2 interrupting click drums
- per-tick duty cycle envelopes
- channels 1 and 2 can play fixed-pitch noise instead of square waves
- channel 4 can use a fast pitch slide for drum simulation
- mixing at approx. 9511 Hz.

I did make an XM converter for this one, but it is very rough code (as is the whole engine, it's got character, to say the least) and needless to say, it does a rather poor job of simulating the sound. Awaiting your bug reports, in any case.

download (XM converter included)
source
demo tune

680

(17 replies, posted in Sinclair)

I'm considering putting together a seperate sample pack at some point. Though at the moment I really can't be bothered. Those endless searches through vast sample libraries is what turned me away from making (PC-based) sampled music many years ago big_smile

681

(17 replies, posted in Sinclair)

Haha, words can't describe what a massive pain in the a*** this was.
I didn't follow your suggestion of including some samples/instruments after all, because hopefully it should just work with any random sample out there now. Even random MOD imports should theoretically be reasonably safe now.

Yeah, the mobile view uses a different css, haven't touched that at all.
Does the main menu work on mobile for all of you? Because it sure is broken when I set a small viewport in Firefox.

683

(17 replies, posted in Sinclair)

Updated the xm2zbmod converter. Fixing the relative sample offset bug was one of the hardest things I've done in recent times, certainly more difficult than the zbmod engine itself.

The new converter brings some changes, namely:

- 16-bit samples are now supported.
- Relative sample offsets other than F-6 (+29) are correctly handled now, as long as they're positive (ie C-4 or higher).
- The note range is no longer fixed. It's still 4 octaves, but the lower and upper limits will vary slightly (at most +/- 1 octave). You can run xm2zbmod with the new option "-r" to see what the actual range for each used sample is.
- You can now supply the option "-i <filename>" to convert a module that isn't named "music.xm".

I doubt the converter will be free of bugs yet, but I'd say it's at least ready for some beta testing.
Download is at https://github.com/utz82/ZX-Spectrum-1- … p?raw=true as usual.

My girlfriend pixelled another background thingy. I think this one looks even better, and unlike the previous one, it doesn't flicker (at least not as much) when scrolling.

With this background, I should probably make some tweaks to the header proportions and such. Will see about that later. Also, still want to get rid of all those shades of blue, but there's a truckload of settings for that and I haven't come up with a good, consistent new scheme yet.

Generally speaking, I don't want to go too Spectrum-y with the layout. I know we mostly talk about Spectrum here, but I'm very much in favour of broadening the scope a bit, ifyouknowwaddamean.

Alright, fixed the floating links. Not the most elegant solution but I've had enough fiddeling for today.
Ok then, I'll keep the background for now, and we can decide later if we stick with it for good or not.

Ok, some more tweaking done. Not sure about the tiled background, it flickers like hell on my browser. Also I still need to sort out various bits and bobs here and there, like setting background for those "floating" links. Anyway, what do you guys think so far (especially about the background)?

I also still don't understand why the mobile view is broken. The code for responsive design in the css is there, but it doesn't seem to be triggered properly. Perhaps the error is in the PHP code, which means chances of me finding it are low.

So I've finally managed to implement this header image. Thanks again to PROTODOME for the awesome design!

Hope it works ok for everyone, It was quite a hassle to fiddle this into the layout. I'm not entirely happy with it yet. For one, I would like to bring back the sub-heading text ("complex music from simple devices"), preferably without adding it to the image itself. Also, for the future I think styling the forum a bit more appropriately would indeed be nice. Not sure if a tiled b/w background wouldn't be too busy, but I'm gonna try some things once I  find the motivation to fight with the forum css again.

Yes, the guy surely has talent. And indeed I find the sound of the zeta engine to be quite pleasing as well, and contrary to what he's said, it doesn't sound bad at all on contended machines.

689

(135 replies, posted in Sinclair)

Not sure about the motivation behind that. I assume it's because Speccy demosceners are aware that the challenge lies in masking the effect. Also, because having those stripes in the border might distract from the actual design of the demo (or game). In the end, it's a matter of taste methinks.

A comment from Oleg Origin:

Oleg Origin wrote:

I have made a lot of beeper engines a few years ago (6 main engines and some versions). I called them simply: alpha, beta, gamma... This is called zeta. (And title of this unfinished track: 'Antivirus'). Digital drums are grabbed from Dark Fusion (I disassembled this engine) and cropped. I have also written s3m converter for these engines. However, it didn't intend for public release (pre-alpha, in fact). I didn't publish source codes, but, actually, this engines work with standard methods of synthesis smile
And all of them not really well sound on original machines with contended beeper port =/
I planned to use them in the following games...
3ch 'Gamma' engine sounds in Metal Man Reloaded / Remixed (slightly different versions).

More about the aforementioned games at http://olegorigin.org/zxgames.html.

Oleg Origin also said he's considering a proper release of his engines. Also, he was kind enough to share his disassemblies of the Dark Fusion and Trantor engines. I'm attaching them here with his permission (shitty google translated comments added by yours truly).

691

(1 replies, posted in Atari)

Nice, thanks!

692

(135 replies, posted in Sinclair)

Indeed, the border fx are a by-product of the sound generator. It's like this in almost all engines (because the port that sets the beeper state also sets the border colour), so usually there is some small chunk of code to explicitly mask the border fx. I personally like border fx (and will sometimes even customize them a bit, like in beepertoy), but it's considered bad style in the demoscene. In case of Squeeker border effects would be especially tedious to mask, so as the engine was written to be compact, there is no masking.

693

(3 replies, posted in Sinclair)

Ah ok, gotcha. Yes, wav2smp.pl takes raw headerless 8-bit, it doesn't really care about sample rate iirc. But I faintly remember there was a problem with that script, so it possibly produces incorrect results. I'll look into it if I can find some free time. You might as well write your own replacement. It's also possible to directly use raw wav (with the usual limitation of volume resolution), all you need to do is change the INCLUDE statements in samples.asm to INCBIN statements.

As far as textures go, I think besides basic waveforms, some simple percussion instruments (kicks, hi-hats) should also be possible to pull off. For anything more complex the 256b limit and especially the low volume resolution will probably prevent any recognizable results.

694

(135 replies, posted in Sinclair)

Hehe yes, Squeeker is quite a beast. I'm planning to do an enhanced version with drums and stuff soon.

Anyway, up next: Chaos Constructions!

695

(3 replies, posted in Sinclair)

Samples for qaop must be exactly 256 bytes long. So simple waveforms will work best.
Also, volume range is limited to 6 steps in total (ie for both channels combined). You can overdrive up to 12 levels, if this limit is exceeded the player will malfunction. Nominal sample rate is 15625 Hz.

696

(135 replies, posted in Sinclair)

Results:

1   8.06   Brink - Just the Tip
2   6.38   AER - SecondMoon
3   6.23   Misha Pertsovsky - Waltz of Ice
4   6.03   Tufty ^ 1-bit forum - Mechanoid
5   5.77   utz ^ irrlicht project - fnk dz
6   5.57   Kakos_nonos - Все идет по плану (ГО кавер)
7   4.84   Abrimaal - Teddybear's Funeral
8   4.67   Lis O'Kryl ^ Therac-25 - Brexit
9   4.29   Garvalf - Horned gods

A bit disappointed with the outcome, but well, there were some very nice works in the compo.

697

(4 replies, posted in Other Platforms)

Ah yes, found the mp3. It does indeed sound quite noisy hmm Some of that might be from the emulator, though.
But I do see room for optimizations.

   ld (Save_RegA),a
   ld a,_LOW
   ld ($1800),a         ;du son à Hector !
   ld ($1800),a         ;du son à Hector !
   ld a,(Save_RegA) 

should at least be

   ld (Save_RegA),a
   ld a,_LOW
   ld ($1800),a         ;du son à Hector ! - why twice? once should be enough?
Save_RegA equ $+1
   ld a,0

and since BC is unused, in most cases even

   ld c,_LOW         ;outside of sound loop
   ;...
   ld b,a
   ld a,c
   ld ($1800),a         ;du son à Hector ! - why twice? once should be enough?
Save_RegA equ $+1
   ld a,b

should do.

system-cfg.com seems like a nice place, I'll think about signing up. Though my French is really too crap for holding a proper conversation.

698

(135 replies, posted in Sinclair)

Thanks for the reminder, Vinnny! I still haven't prepared anything, but I hope I'll find some time this week.

699

(4 replies, posted in Other Platforms)

Excellent news, thanks for sharing. And of course, my respects to the author!
I'll have to see if I can get emulation going somehow, very curious how this sounds. I'm afraid adapting the code to memory-mapped IO might not have had the best impact on those tight timings.

700

(4 replies, posted in Sinclair)

Hehe, thanks mate wink

Well, I have one more crazy idea that I need to put into practise, but after that I should really take a break from this stuff. Going totally nuts on it.