+DZ-Jay Posted February 29, 2016 Share Posted February 29, 2016 Waiting for a splash screen from dz Oh snap! I dropped the ball, didn't I? Sorry about that. I'll add it to my growing To-Do list to get back on it. I know I was pretty close before. dZ. Quote Link to comment Share on other sites More sharing options...
artrag Posted June 14, 2016 Author Share Posted June 14, 2016 minor update to titles Quote Link to comment Share on other sites More sharing options...
artrag Posted June 15, 2016 Author Share Posted June 15, 2016 (edited) DZ, I would add voice samples using this: http://atariage.com/forums/topic/253650-voice-without-intellivoice/ Which samples do you suggest and when ? Edited June 15, 2016 by artrag Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 16, 2016 Share Posted June 16, 2016 DZ, I would add voice samples using this: http://atariage.com/forums/topic/253650-voice-without-intellivoice/ Which samples do you suggest and when ? Are you thinking of a voice "enhanced" game (with samples here and there like some classic arcade games); or are you thinking more of Intellivoice-style games, where the voice is integral part of the game mechanics? Quote Link to comment Share on other sites More sharing options...
artrag Posted June 16, 2016 Author Share Posted June 16, 2016 Enhanced game, not sure if all players understand the speech. 1 Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 16, 2016 Share Posted June 16, 2016 Enhanced game, not sure if all players understand the speech. I downloaded the Jun/26 version from the future and played it without finding it, I searched even for the voice in the source code Anyway the sound effects are great 1 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 17, 2016 Share Posted June 17, 2016 Enhanced game, not sure if all players understand the speech. Of course! Well, in my head, I imagine hearing the navigation computer telling you the next sector you are entering, while in between waves/level. Sort of like in Gyruss, where it says "3 warps to Neptune," you can have a voice saying something similar like "Entering sector 78." Also, when the boss arrives, have a deep voice talking in some gibberish alien language to announce his arrival. My idea is that it would be cool to have the voice do "background" stuff, saying pseudo-technical stuff here and there, just to add atmosphere. Think THX-1138 or the Star Wars rebel assault just as examples of this sort of thing. -dZ. I downloaded the Jun/26 version from the future and played it without finding it, I searched even for the voice in the source code Anyway the sound effects are great Quote Link to comment Share on other sites More sharing options...
artrag Posted June 17, 2016 Author Share Posted June 17, 2016 (edited) I would add these sentences - "new enemy wave approaching" each time a new enemy type enters the game - "large enemy ship approaching" each time a boss arrives - "level up" each time the game increases its speed after all enemy types have passed I could also add some "ah!" or "ouch!" each time some enemies get killed Going to experiment a bit. Any nice wav to suggest for these interjections? PS no more release from the future PPS I'm also trying to improve the voice coder I think there are margins of improvement I'm refining pitch estimation algorithm and finding a way for adding more wisely the noise only in unvoiced frames Edited June 17, 2016 by artrag 2 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 18, 2016 Share Posted June 18, 2016 I would add these sentences - "new enemy wave approaching" each time a new enemy type enters the game - "large enemy ship approaching" each time a boss arrives - "level up" each time the game increases its speed after all enemy types have passed I could also add some "ah!" or "ouch!" each time some enemies get killed Going to experiment a bit. Any nice wav to suggest for these interjections? Sounds good. I like the "computer assisted" situation-awareness. PS no more release from the future PPS I'm also trying to improve the voice coder I think there are margins of improvement I'm refining pitch estimation algorithm and finding a way for adding more wisely the noise only in unvoiced frames Brilliant. It already sounds pretty good, so any improvement is just icing on the cake. Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 (edited) Feature request: I was fighting with intybasic to fit in rom data and code including voice samples. Wouldn't be possible to make the compiler sort it out by itself? Once you choose the rom layout according to the extensions plugged (ECS, intellivoice, whatever), the available room in rom is known and fixed. From what I see nothing prevents the compiler to allocate procedures and data in order to fit them in the available room. The sole limit is to not separate adjacent data lines. Is it possible? Edited July 20, 2016 by artrag Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted July 20, 2016 Share Posted July 20, 2016 Take a look at 42k.bas in the IntyBASIC contrib folder. That example shows how to create a pretty big ROM. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 Feature request: I was fighting with intybasic to fit in rom data and code including voice samples. Wouldn't be possible to make the compiler sort it out by itself? Once you choose the rom layout according to the extensions plugged (ECS, intellivoice, whatever), the available room in rom is known and fixed. From what I see nothing prevents the compiler to allocate procedures and data in order to fit them in the available room. The sole limit is to not separate adjacent data lines. Is it possible? Well, there is at least one thing preventing the compiler from allocating procedures and data in order to fit them in the available room: the fact that it doesn't do any allocation or linking itself. Remember that the assembler (run as a second step outside the compiler) generate the object code without a linker. It is indeed possible to have IntyBASIC do this, but I'm sure it'll be a lot more work to put on the compiler. Still, it's a good thing to have; I just think it's not as trivial as some think. That said, Joe Z. and Óscar have been talking about how to get information from the assembler so that the compiler could do this. -dZ. Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 Not trivial but you do not need to integrate the assembler. You need to know the size of the instructions you now generate and put orgs in the asm code in order to fit the current memory layout. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 (edited) Not trivial but you do not need to integrate the assembler. You need to know the size of the instructions you now generate and put orgs in the asm code in order to fit the current memory layout. Sure, but that's the trick: knowing the size of each instruction and keeping track of the memory layout is what the assembler handles today. IntyBASIC by its original design deferred all that to the assembler, which is part of why you needed a two step build. So, of course, if IntyBASIC did the one thing it doesn't do today, it wouldn't need the assembler to do it for it. Like I said, I agree that it is worth pursuing, I just think it'll take some time and effort. dZ. Edited July 20, 2016 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 Store the size of opcodes with their text, compute the size of procedures and data chunks, fit the chunks in the memory layout, add orgs to the generated asm. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 Store the size of opcodes with their text, compute the size of procedures and data chunks, fit the chunks in the memory layout, add orgs to the generated asm. Cool. Let me know when you have your compiler ready and I'll test it. Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 Still waiting for your sdk Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 Still waiting for your sdk I know, and on my title screen, and on Oscar's updated version of IntyBASIC with all the frills in it. Too bad there are so many things you are waiting for that prevent you from producing a game. At this pace, the world will never see your masterpieces. We're all a bunch of slackers. dZ. Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 I cannot find your last released project for intellivision... Should I look into posts from 2014 or before? Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 (edited) I cannot find your last released project for intellivision... Should I look into posts from 2014 or before? You can look in my profile for my works in progress. You can also join the INTVPROG mailing list if you really want to keep abreast of all my contributions. Perhaps you'd like to participate yourself? I'm also working on a fully-featured high(ish)-level programming framework for the Intellivision, but it keeps getting bumped down in priority due to work and personal life. It's like 80% done right now. If you'd like to try it out send me a PM, I'd be happy to share it and perhaps you can help test it and improve it. -dZ. Edited July 20, 2016 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
artrag Posted July 20, 2016 Author Share Posted July 20, 2016 ah, no release ... what a miss in the meanwhile you can use my voice encoder and its intybasic player, it is fully working and ready to use Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 20, 2016 Share Posted July 20, 2016 (edited) ah, no release ... what a miss Yeah, at least it's all my doing and not being held up by waiting on others. in the meanwhile you can use my voice encoder and its intybasic player, it is fully working and ready to use Thanks. That's something at least. I'll check it out whenever I get around to using IntyBASIC. I look forward to hearing loads of voice samples in your next game. Edited July 20, 2016 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
Kiwi Posted July 21, 2016 Share Posted July 21, 2016 DZ-Jay is probably going to beat me up for mentioning the word bankswitching. You could try to make a Mattel page-flipping type ROM if you need more space. Joe Z explained how page flipping works and thankfully you can use asm directive in Intybasic to set the ROM origin for AS1600 to pick up and execute. http://atariage.com/forums/topic/254097-intybasic-support-for-rom-region-swapping/ Alternatively you could compress the data and add cartridge RAM support for your project to unpack the data to cartridge RAM and run the sound samples from there. I'm not sure if there's any decompressor made for CP1600 CPU, like pletter, bitbuster, and etc. So those 2 options are the good choice to go through now. Your ROM size can go up to 84 Kilobyte(42K Word) of data without bankswitching, less if you really need ECS stuff. I usually use the cfg file it generate to figure out how big my segment is getting like, $0000 - $1BFF = $5000. Substracting,$1BFF with $0000 is 7167 bytes, I only have 1 kilobyte left in that segment since cart.mac said that $5000-$6FFF is a valid address. If you're over 8191, then move some data over to the other segment. My game ROM, Mad Bomber, file size is 39.5 KB now. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted July 21, 2016 Share Posted July 21, 2016 DZ-Jay is probably going to beat me up for mentioning the word bankswitching. You could try to make a Mattel page-flipping type ROM if you need more space. Joe Z explained how page flipping works and thankfully you can use asm directive in Intybasic to set the ROM origin for AS1600 to pick up and execute. LOL! Bank-switching is a real option. Especially for a game with voice samples, which take considerable space in ROM. One downside is that the banks are mutually exclusive, so you will have to flip pages regularly in order to play the samples you need. You could mitigate this if the game has various phases, by storing data for each phase in its own bank. The document "/doc/utilities/as1600.txt" that comes with the SDK-1600 (included as "/Documents/Tech/as1600.txt" in the IntyBASIC SDK), has a lot more information on how bank-switching works. It also explains how to define "Overlaid Tables" of data that can be dynamically selected via the bank-switching functionality. This can be very useful for this sort of situation. Alas, these are features of the assembler, not of IntyBASIC (at least not yet). However, nothing is stopping an enterprising individual from creating IntyBASIC "macros" that encapsulate this sort of feature. Sure, the underlying functionality will need to be implemented in assembly language, but it can be interfaced via I believe GroovyBee has offered at least one solution for selecting memory segments, and Joe Z. has made recommendations on how to do the bank-switching from IntyBASIC. -dZ. 1 Quote Link to comment Share on other sites More sharing options...
artrag Posted July 21, 2016 Author Share Posted July 21, 2016 (edited) My voice encoder needs a word per channel per frame. Using 3 channels, it takes 6 bytes per frame, i.e. 360 bytes per second of speech. So I think DZG should safely fit in a plain rom without bank switching. The current problems are about partitioning the code and the data across the holes in the memory layout, but the whole rom atm is barely 30K This rom has 4 voice samples on 6 channels (now interfering with music, only one sample is used) and is about 27K NB: use with ECS dzgorf.rom Edited July 21, 2016 by artrag 2 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.