Jump to content

R0ger

Members
  • Content Count

    753
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by R0ger


  1. Anyone has example of frequency switching (like in VBI) to achieve better tuning ?

     

    EDIT: so I just tried .. in RMT .. A distortion .. C3 and C4, sounds quite off. No wonder. C3 uses divisor $3C. C4 uses $1D. $3C is decimal 60. Divisor is actually base frequency / (X+1) .. so C3 is base frequency / 61. Clearly for C4 we need divisor 30.5. We can't have that, so the nearest $1D, which corresponds to base frequency / 29, is off.

    Switching 1D and 1E should on average give me good approximation of 30.5.

    Problem is with speed of the switching. Just VBI is bad. You can hear the individual tones. Even my toner picks it up as wave. 4 times per frame is better. At least for the tuner, it can't see the changes anymore, and it reports correct average frequency. Ear is not so easy to fool, you hear strong 200Hz modulation on the tone. IMHO this is absolutely no way to go. Maybe for fine tuning in the second octave, but in third, where it really gets out of hands, it's useless.

    • Like 3

  2. I am utterly annoyed by wiseguys here saying POKEY is rubbish.

     

    People should use their brains and think about what year it was developed in.

     

    The 400 and 800 were released in 1979.

     

    Name me ONE device....it can be a game console, or a computer, or whatever.....that had a BETTER sound chip than the A8 at that time ?

     

    Man I love POKEY. But mainly because it's such a challenge :-D Also I don't care about 'then' .. sure it was the hottest thing one day. And it can do some things better then AY or SID. Precise tone generation is not one of those though.

     

    As for me using hardbass, I don't feel the urge. I feel the urge to make new tracker which will also allow for stuff like that. But that also puts it into 'distant future' ..


  3. Certainly lot could be done with software. One of the problems with RMT is this.

     

    In A mode (clean) you can choose any tuning. You can shift whole scale few Hz up or down. 8bits is enough for low octaves, problems only arise at higher frequencies.

    But with bass modes, C and E, you can't fine tune. Those modes select specific frequencies from polynomial mode, which sound nice. Since some of the tones sounds shifted fifth, you can get 2 full scales from one polynomial mode. But you can't shift it up or down, the frequencies are fixed. For C has divisor $BF in C mode. If you change the divisor to $c0, it becomes F in E mode. The waveform of 2 neighbor values is completely different, because it selects different edges from the polynomial counter.

     

    So back to RMT. RMT uses (AFAIK) official tone tables for each mode. Thing is it seems those tables tries to mach correct (A=440Hz) tuning. A mode is better for that. C and E modes kinda fail at that. Mode A may be (more or less) correct, but not compared to C and E. When working on Bad apple I tried to change the tone table for A to match how C is off. I actually used tuner application for smartphone and was tuning individual modes (16 bit mode too) to match each other. I'm still not satisfied, but I had to try at least. And at least on the tuner it looks better.


  4. Pokey indeed is rubbish. I mean you can get used to it, but every time I work on a song, first 30 minutes my ears just bleeds. I mean I don't have absolute pitch or anything, but it's bad enough. 8 bits is just not enough for frequency, and the way bass is done brings even more limitations. That's why I love recent hardbass, it's the raw square of pokey with (relative) cleanness of let's say SID or Yamaha.

    • Like 1

  5. Which reminds me .. I prototype most things in good old Visual Basic 6. My 3D engine was done in that completely, to test numerical resolution decisions, or to test different approaches. Beats debugging vector math in asm. But it's good for games and such too. I can have moving sprites in VB6 in like an hour. I see if the sprite works, if the control method works. Also most of the time you need to convert GFX, even animations, from some bitmap format, and you need to generate some tables. Again, VB6 is very good for that. Well I wouldn't recommend it to anyone who hasn't been using it yet, it for sure has it quirks, and it's all but discontinued .. but it's very powerful for this small stuff, and it has very strong edit & continue debugger.

    • Like 1

  6. Never mind. I found out if I reset my video-to-vga converter after loading the girl-stripes.xex it does look better! I forgot that I sometimes have to reset the converter if I'm switching between more normal and more exotic video signals/resolutions. But it handles it all like a charm!

     

    This version is much better, far less flicker which allows better color saturation to perceived vision. This is the best 256 color mode I've seen from the A8. The amount of flicker I'm seeing reminds me of the old B/W 15fps movies. Which is good compared to flicker from other mixed modes.

     

    Now we're talking ! This is what I expected .. you can see odd and even pixels are different height, but not so much. So on frame-merging LCD it might work - and they do not flicker at all, that's the good thing about them.

     

    Anyway, I never realized I can just take picture of the screen with camera :-D This picture shows the grid I was talking about. The grid actually goes throught middle of the GTIA pixels, and inside each 'cell' you should see clearly 2 different colors.

     

    Yeah .. the mode can looks amazing .. but it can also look crap. That's the problem ..

    • Like 2

  7. When I was doing the A8 version, interframe+interline delta was actually way less effective than interline only. If you think of it, you are storing the 'outline' of the picture .. if you use interframe delta, every outline is there twice. Instead of single outline in every frame, you see outline of previous frame too. Which brings the extra data into stream. It would be speed effective, if you used single buffer, and if you could only change the parts where the data changed. But memory wise, it's not.

     

    My final solution was interline delta, encoded by columns (ie. the delta was simply between consecutive bytes). I used forced control byte on column change, for a cost of just a few % of data I could significantly simplify the depacking routine - I knew I will never run of buffer space. I also marked empty columns for every frame. Just how many columns from left and right and what color are they. IIRC it was like 10% data saving.

     

    But note I was doing pure 1bpp with no dithering at all.

×
×
  • Create New...