801

(135 replies, posted in Sinclair)

Sure thing, here you go. May not be the most useful thing though as it's hardly commented.

If you want to learn the basics about keyboard reading and such, check out the wonderful "How to Write ZX Spectrum Games" by Jonathan Cauldwell: http://www.sendspace.com/file/alhxcq

802

(5 replies, posted in Sinclair)

Thanks wink Yeah, definately worth doing the alignments for this one. I'm amazed how much it reduces noise in this case.

I'm afraid it'll be a while till someone makes a proper track with this. At least till I can figure out how to make 1tracker plugins (still haven't gotten beyond the "1tracker-will-simply-ignore-whatever-I-throw-at-it" phase), or number9 integrates it into Beepola.

803

(5 replies, posted in Sinclair)

First up, some bad news: I'm releasing this engine as source-only, because some of it's major features can't be simulated via an XM template. Sorry 'bout that...

Anyway, wtfx (aka "wavetable player with effects") is my latest attempt at creating some decent-sounding triangle waves on the beeper. While not perfect, it's quite an improvement over qaop and the like, I think.

Features:
- 2 channel wavetable mixing, 256 byte wavetables
- 4 volume levels per sample
- 17.5 KHz mixing
- tick-based effects (can change wavetables/pitches without having to set a new note)
- per-step tempo control

download
browse source

Enjoy! And thanks to introspec for stressing the importance of 8t output alignment wink

804

(135 replies, posted in Sinclair)

In the worst case you could still use my rom2pwm craptility, though it's definately not very useful.
My website is down again so I'm attaching it just in case.

805

(135 replies, posted in Sinclair)

Doing this without display output would indeed save a lot of time. Why do you need to write it in C/Basic with inline asm though? I think just asm might be easier even if you don't know a lot of asm.

Yeah, a vid would be awesome!

@gotoandplay: I just read somewhere that on newer Windowses, installers that require direct hw access might need to be run via right-click-"run as administrator" even if you are already admin. Dunno if that helps in your case?

807

(135 replies, posted in Sinclair)

Yeah, I've been wanting to make something like this for a long time. However, it's no trivial project, I'm looking at at least 2-3 months of work here. I still know near to nothing about Spectrum graphics, so I'd need to learn a lot of new things. I'm afraid I won't get around to it in 2016.

Ok, fixed the mute indicator bug, and AutoInc is now off by default. But the thing I can't figure out is how you manage to crash the calc. I'm on F00, pushing buttons like a maniac, and the damn thing just won't die. How do you do it exactly? Could you by any chance record a video of you crashing the thing?

809

(22 replies, posted in Sinclair)

The xm2squeek package has been updated, it now enables you to set the duty cycle per pattern.

810

(65 replies, posted in Sinclair)

True that, seems like it's recorded from TV speakers.

Edit: Just polished up the yawp package a little, correcting some errors in the documentation and fixing a faulty sample in the xm template.

I'm glad you're still trying to push HT2 to the limits, otherwise these bugs might go undiscovered. And it's probably me who is to blame for the RAM clears yikes Thanks for reporting in any case, I'll look into these. I'll also consider deactivating autoinc by default, since you're not the first to ask wink

812

(65 replies, posted in Sinclair)

Add 2 nops immediately after every out (#af),a instruction.

Not a wine user (my PC is too old/slow, and I consider it a security risk), so I'll have to try dcvg5k on my win xp box after all hmm Judging from the recording the guy put on soundcloud it sounds good ok though, except that the noise drums seem a bit quiet.

813

(65 replies, posted in Sinclair)

Glad you got it working!

Could you ask Daniel if he would be so kind to release the sources for the new version of dcvg5k, so I can build it on linux? I failed to build the old version btw, because ld can't find the DAsm function in dasmz80.c for some reason.

object/dcvg5kdesass.o: In function `Displaydesass':
dcvg5kdesass.c:(.text+0x26f): undefined reference to `DAsm'
collect2: error: ld returned 1 exit status
makefile:9: recipe for target 'dcvg5k' failed

Btw, on forum.system-cfg.com you advised to remove the "exit" section. This isn't such a good idea, because it will cause a stack imbalance if the routine actually exits (eg. if loop is disabled [jump in line 47 enabled] or if you put the keyboard check back in). A better way would be to remove lines 28-29 and 460-461 - these are only necessary because ZX Spectrum BASIC expects a certain value in HL'. You probably don't need to do this on VG5000.

814

(65 replies, posted in Sinclair)

Hello jeremielapuree,

Very cool that you are porting this routine to VG5000! I'm busy today so I can't check out your work right now, but I will do so as soon as possible.
Is there a version of dcvg5k for regular linux, btw?

The _skip labels are so-called local labels, they are only valid till the next non-local label. Prefixing with an underscore (_) is how pasmo does it, other assemblers will use a different syntax.

You can in fact remove lines 19-26 in main.asm, this code is just there to detect the presence of a Kempston joystick interface. So it's ZX Spectrum specific, you don't need it on VG5000. Then, you can replace the code you listed in your post with a standard keyboard check on your machine.
Hope that helps wink

815

(65 replies, posted in Sinclair)

Aaaand another attempt at fixing the /§$(/§&$§! quattropic converter. Rewrote the entire mode selection code (the one that sets the row mode flag based on the presence/absence of noise and slides). Who knows, maybe it will actually work for once? Going on previous experience I don't have very high hopes.

816

(22 replies, posted in Sinclair)

Ah, I see. That's indeed a promising concept. It'd be especially interesting to attempt an implementation that uses it for harmonics.

What was the PIC implementation used for, just a stand-alone thingy? Do you still have sources for it?

817

(22 replies, posted in Sinclair)

Zilog wrote:

Is it really more efficient than mine?

Not at all, yours is certainly more efficient! The idea was more to smoothen row transitions by speeding up the data loading. I think that worked out reasonably well, though as you can probably tell from the code it's not optimized at all yet.

8bit mixing with postscaling? Sounds intriguing, but to be honest I don't quite understand how that would work. Could you explain a bit more about this idea? In any case, I'd love to see a new engine from you, given the unique approach you took in Squeeker smile

818

(65 replies, posted in Sinclair)

Ah yes, some test files will help to analyze the problem, though at this point I'm considering rewriting the whole converter, as I've patched it like 5 times already without success.

The idea of the slides is indeed to simulate kick drums and toms. However, seems it's not that feasible after all, since their volume is too low. So perhaps I'm gonna add some good old-fashioned click drums after all.

819

(3 replies, posted in Sinclair)

Hehe, enough of the honey big_smile The problem is that at the moment there's less than a handful of active developers on here, none of which really have their head in Zeddy stuff. Hmm, perhaps you could poke the nollkolltroll guy, he seems to be one of the most talented ZX81 coders out there at the moment...
Another problem is that at the moment there are no emulators which accurately emulate ZX81 port behaviour (you may remember this was giving us a lot of trouble with 1k2b). And I can't really be bothered to buy a ZXpand just for the purpose.

Well, if you have the time please do post some info about the ZX81 "loud tape" mod here, just in case someone wants to have a go at it.

Oh wow, that's exactly the type of timbre effect I've been phantasizing about.
I could try to implement it for TI (6 MHz), but on the other hand the target audience for that is tiny (basically boils down to garvalf and myself at the moment), so I'm not really motivated to spend my time on it.
Do you think you could get it to work in 3.5 MHz by going back to Phaser1 (ie, one channel with the effect and one without), and perhaps using a partially unrolled sound loop (ie updating frequency counters one at a time instead of both each loop iteration)?

821

(65 replies, posted in Sinclair)

Gah! Not again... Yeah, that's a bug in the converter alright. For some reason I just can't get it to output the proper combination of flags and counter values. Ok, I'll look into it in the coming days.

The slides should theoretically behave as you might expect, except that (unlike in the template) they will reset on every row.

822

(7 replies, posted in General Discussion)

Indeed, you have a good point there.

I've experimented a little with combining pin-pulses with Phaser-like synthesis. It certainly leads to some interesting results (overtones and such). However, volume balance is a problem, so the effect tends to be quite subtle. I haven't yet managed to get it right.

There's also another interesting idea by Alone Coder, based on a kind of wavetable synthesis, or duty cycle modulation, if you will:

Alone Coder wrote:

I make a series of long impulses between natural divisions of the
period.

For example:
- 128,256 (I list the positions where the phase is changed) gives a
simple meander.
- 85,92,128,128+85,128+92,256 gives lighter sound with acute 3rd, 5th,
7th harmonics. Sadly we can't avoid even harmonics but we can minimize
them.
- 21,92,128,128+21,128+92,256 gives even lighter sound with more power
in higher harmonics.

Edit: Just saw your post in /sinclair. Too tired now, will check it out tomorrow.

823

(5 replies, posted in Sinclair)

Yeah, kickass track. Also, glad to see this powerful engine is finally getting some well-deserved attention.

824

(65 replies, posted in Sinclair)

And a new Win build for this one, too. Download address as above.

825

(164 replies, posted in Sinclair)

Sadly, no. But it's good you remind me, I'll try to poke krue for a new patch file at least.