Jump to content
IGNORED

Very nice rmt bug


samurai

Recommended Posts

So try multiple color changes during player rutine and see what part consumes the most CPU, and you can move these colorchanges in code to find the exact place.

Yes, you're right. But I hope for any more soptisticated tool (cross-platform "profiler" program).

It's not be sufficient to know "parts" - I want know an statistics for each assembler instruction (!).

I imagine some schematic graph - it would be very nice!!! :)

Which of you will make such profiler tool ??? :ponder:

(Hey, Fox, are you here? Do you hear me? Pleeeeeeease... It could be superb accessory for your splendid XASM! 8) )

Link to comment
Share on other sites

It's not be sufficient to know "parts" - I want know an statistics for each assembler instruction (!).

 

It is impossible to write a simpe program for that. You are expecting a some kind of emulator. I must say that Atari800 is great emu but it doesn't contains ANY tools for developers: bugtraps, step by step run, memory protection and many others. Some day I must look into that. Maybe next year?

 

Raster, I've printed your player (24 pages :x ) and I'm going to look into that. Maybe I will have some advices? Mut more likely I will stole some of your ideas like I previously did with CMC and MPT :wink: :D

Link to comment
Share on other sites

P.S. Analmux, I've seen that you are using wavelab to see the atari sound. Do you have also screenshots of sound with distortions? I'm very curious to see how the popular distortions 8 (drums) and C (bass) looks like.

I'll explain how to make 8x6 text mode later. Now I have to get some sleep (it's 3:33 AM).

 

Cool screenshot. ;)

 

Yeah, when I get home tonight I'll make some new pokey recordings.

Link to comment
Share on other sites

I must say that Atari800 is great emu but it doesn't contains ANY tools for developers: bugtraps, step by step run, memory protection and many others. Some day I must look into that. Maybe next year?

 

I've heard that Atari800Win has many debugging features that are turned off in the normal build. You can compile a version with all the debugging features on and it includes stepping, etc...

Link to comment
Share on other sites

O.K. Now I'm back from work and have about 30 minutes until I have to go to another work ;) so I can tell how to make 8x6 text mode. All of that Fox told me during Opalenica party.

 

At first, how the vscroll works. When You set $d205 to 2 the the first line with vscroll on will go up 2 scan lines so only 6 bottom scan lines will be visible. All the next lines with vscroll on will be full visible but 2 scan lines up. First line without vscoll will be cut. Only the first 3 lines will be visible.

 

My screen is organized as follow: one text line with vscroll, one without, one with, one without... So when I set $d205 to 2 i will see 6 scan lines of first line, 3 scan lines of second, 6 lines of third etc...

 

The way to make 8x6 mode is to fool Antic every second line that the $d205 was actually 5 ;)

 

The only problem with that is to make this change that way to not harm the line above (not to early) and to affect the line below (not to lately). Fox says that we have about 5 cycles window. Just enough.

 

And You have to remember that sometimes 2 first lines are cut and sometimes 2 bottom. So you have to have 2 charsets.

 

Most of my DLIs looks like:

 


      pla

      sta $d40a

      lda linewsk

      sta $d405

      eor #7

      sta linewsk

      lda fontwsk

      sta $d409

      eor #4

      sta fontwsk

      pla

      rti

Link to comment
Share on other sites

Raster, I've printed your player (24 pages  :x ) and I'm going to look into that. Maybe I will have some advices? Mut more likely I will stole some of your ideas like I previously did with CMC and MPT  :wink:  :D

I'm sorry that the RMT player has 24 pages... I want to do it for 20 pages at most, but I wasn't succeed :D

 

Hey, Jaskier, please, tell me your advices, I want to know it certainly. :)

BTW - You can stole from my ideas what you want, no problem. ;)

Link to comment
Share on other sites

..and here are some waves from pokey:

 

picture 1: generator 8 (sound 0,35,8,4)

picture 2: generator 12: left part (sound 0,106,12,4); right part (sound 0,107,12,4)

 

We see that generator 12 allows for special types of 4 or 8 step pulses.

 

Anyway the assymetric waves with that types of distortions are also welcome I think ?

 

I'll try to insert assymetric waves to tmc without irq enabled. I think I can make it work only by observing changes of irqst. The problem is that player is very long and it can cause problems. Maybe I insert some code for that also to player. For example after processing 1 track I will check irqst?

 

Analmux:

 

After instaling the new Atari800Win I have the same problem with sound as you. Every odd frame no sound and bars. Then I realized that I have joystick autofire turned on. Maybe it is the source of problem in your case also?

 

P.S. Maybe we should agree to speak in only one topic :D :wink: 8)

Link to comment
Share on other sites

..and here are some waves from pokey:

 

picture 1: generator 8 (sound 0,35,8,4)

picture 2: generator 12: left part (sound 0,106,12,4); right part (sound 0,107,12,4)

 

We see that generator 12 allows for special types of 4 or 8 step pulses.

 

Anyway the assymetric waves with that types of distortions are also welcome I think ?

 

I'll try to insert assymetric waves to tmc without irq enabled. I think I can make it work only by observing changes of irqst. The problem is that player is very long and it can cause problems. Maybe I insert some code for that also to player. For example after processing 1 track I will check irqst?

 

Off course you can generate some asymmetric pulses with distortion 12, but you cannot change any parameters (pulsewidths of the 8 steps), and not every note has the same kind of waveform, it rather depends on the ratio of the pitch and the pokey base-frequency. Some pitches don't give a sound at all (I think f.e. pitch 14, 29, 59 etc.). That gives us a rather small spectrum of available notes versus waveforms ---> detuning at max.

 

About the IRQ problem:

I need to experiment with this myself, but it's a shame DLI and IRQ bite each other, and I think there could be another (simple) way to avoid problems. Checking IRQST is really an emergency solution, and I don't think it will help you all the time (especially NOT with pitches under 10).

 

Maybe you can trigger DLI code with another IRQ (timer) instead of display NMI. :D

Link to comment
Share on other sites

Off course you can generate some asymmetric pulses with distortion 12, but you cannot change any parameters (pulsewidths of the 8 steps), and not every note has the same kind of waveform, it rather depends on the ratio of the pitch and the pokey base-frequency. Some pitches don't give a sound at all (I think f.e. pitch 14, 29, 59 etc.). That gives us a rather small spectrum of available notes versus waveforms ---> detuning at max.

 

O.K. So we have to decide. I have two propositions to insert asymetric waves to TMC 2.0:

 

1) by using type of sound number 7 (it is most likely unused for now). Type of sound it is like: vibrato, slide up, down.

-advantages: we can use distortions 0,2,4,6,8 etc.

-disadvantages: we cannot make vibrato sounds :(

 

2) pure tone is achieved by A or E types of distoritions (as I remember). So we can use A for normal sound and E for asymetric.

-advantages: we can use vibrato sounds

-disadvantages: we cannot use other types of distortions

 

Asymetric wave require to values for AUDF. First we get processing sound without accents, second by only getting accent value.

 

All people: what do you think? :?:

 

About the IRQ problem:

I need to experiment with this myself, but it's a shame DLI and IRQ bite each other, and I think there could be another (simple) way to avoid problems. Checking IRQST is really an emergency solution, and I don't think it will help you all the time (especially NOT with pitches under 10).

 

But the advantage is that we can use asymetric waves on second pokey even if it has IRQ pin not connected.

 

Maybe you can trigger DLI code with another IRQ (timer) instead of display NMI.  :D

 

But we don't have any other timer with high resolution (114 cycles). Maybe we could insert 3 pokey only for irq?

Link to comment
Share on other sites

 

O.K. So we have to decide. I have two propositions to insert asymetric waves to TMC 2.0: (...) All people: what do you think? :?:  

Not being a musican or coder, I would suggest you should put some music examples to demonstrate what you are talking 'bout. 8)

Then I can decide about it in right way. :D

Link to comment
Share on other sites

Jaskier: why dont you use a new code of distorsion ?

T for instance (or somenthing else)

Then you can have distorsion and vibrato ...

Because T is not a hexadecimal value :) I'm not thinking how represent asymetric sound in composer but how to store data in memory and how to use them.

And I have also to think about speed of player. Adding another step of sound processing could be time consuming. The sound processing goes like follow:

1) fading sound

2) read new data from envelope

3) arpeggio

4) process sound by type (vibrato etc)

5) accent

(So you can see the difference between TMC 1.0 player and 2.0. In 1.0 accents were processed as step 3 and if accent was not 0 then it was the end of sound processing, now this procedure is more time consuming but the sound should be better.)

I can process asymetric wave in step 4 or 2. And these 2 posibilities I have proposed.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...