Heaven/TQA Posted February 4, 2004 Share Posted February 4, 2004 looks good... regarding $d405. my 1st initial thought could be that you use a 8x8 font containing data for 8x6 starting from the top...the empty scanlines at 7th and 8th scanline in a char are clipped away with vscrol $d405 and antic is fooled to fetch new line of data... Quote Link to comment Share on other sites More sharing options...
raster/c.p.u. Posted February 4, 2004 Share Posted February 4, 2004 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 ??? (Hey, Fox, are you here? Do you hear me? Pleeeeeeease... It could be superb accessory for your splendid XASM! ) Quote Link to comment Share on other sites More sharing options...
Jaskier Posted February 4, 2004 Share Posted February 4, 2004 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 ) 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: Quote Link to comment Share on other sites More sharing options...
analmux Posted February 4, 2004 Share Posted February 4, 2004 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. Quote Link to comment Share on other sites More sharing options...
Shawn Jefferson Posted February 4, 2004 Share Posted February 4, 2004 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... Quote Link to comment Share on other sites More sharing options...
Jaskier Posted February 4, 2004 Share Posted February 4, 2004 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 Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted February 4, 2004 Share Posted February 4, 2004 I've heard that Atari800Win has many debugging features that are turned off in the normal build. http://www.atariage.com/forums/viewtopic.p...highlight=debug Quote Link to comment Share on other sites More sharing options...
analmux Posted February 4, 2004 Share Posted February 4, 2004 ..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. Quote Link to comment Share on other sites More sharing options...
raster/c.p.u. Posted February 5, 2004 Share Posted February 5, 2004 Raster, I've printed your player (24 pages ) 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: 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 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. Quote Link to comment Share on other sites More sharing options...
Jaskier Posted February 5, 2004 Share Posted February 5, 2004 ..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 :wink: Quote Link to comment Share on other sites More sharing options...
analmux Posted February 6, 2004 Share Posted February 6, 2004 No, autofire is not causing any troubles on my emulator. I didn't change any settings (as far as I remember). One day the frameskipping just didn't occur anymore Quote Link to comment Share on other sites More sharing options...
analmux Posted February 6, 2004 Share Posted February 6, 2004 ..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. Quote Link to comment Share on other sites More sharing options...
Jaskier Posted February 6, 2004 Share Posted February 6, 2004 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. But we don't have any other timer with high resolution (114 cycles). Maybe we could insert 3 pokey only for irq? Quote Link to comment Share on other sites More sharing options...
Dracon Posted February 7, 2004 Share Posted February 7, 2004 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. Then I can decide about it in right way. Quote Link to comment Share on other sites More sharing options...
samurai Posted February 7, 2004 Author Share Posted February 7, 2004 Jaskier: why dont you use a new code of distorsion ? T for instance (or somenthing else) Then you can have distorsion and vibrato ... Quote Link to comment Share on other sites More sharing options...
Jaskier Posted February 7, 2004 Share Posted February 7, 2004 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. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.