-
Content Count
13,060 -
Joined
-
Last visited
-
Days Won
21
Posts posted by DZ-Jay
-
-
On 12/18/2020 at 6:34 AM, carlsson said:Up till now, I still don't know anyone who has integrated Arnaud's tracker with IntyBASIC. I imagine me or DZ-Jay are most likely to do that, though the player uses a good amount of 16-bit variables so it could be a tight fit without CC3/JLP extension.
This is now a reality! I have adapted the Intellivision Music Tracker v1.5 (based on Arnauld's tracker) to integrate with IntyBASIC.
By the way, the 6-channel tracker uses only eight 16-bit variables. It does require 35 8-bit variables, but the pool of 8-bit Scratch RAM is considerably larger. :)
-dZ.
-
4
-
-
Merry Christmas & Happy New Year, everyone!
I've been working on a little project for the past several months and it is finally ready to be shared. Introducing the new and improved Intellivision Music Tracker v1.5.
Just what is an "Intellivision Music Tracker"?
It's a software library that allows you to play specially crafted music files in your own Intellivision games. These files are similar in nature to the classic tracker module (MOD) format employed in many old school platforms.
Originally written by Arnauld Chevallier and released to the public domain many years ago, this new version includes many changes, enhancements, bug fixes, and fully comprehensive documentation.
This entire project started as part of the demo Voyage: An Intv Journey. The original idea was to take Arnauld's tracker and enhance it to support the additional sound processor in the ECS, and fix a few latent bugs. I then took it upon myself to reverse-engineer the entire tracker and document in exhaustive detail the data format in order to add new features to it. The result is not only a comprehensive user manual and technical guide, but an improved and highly-optimized version of the tracker.
Plus it plays some of the best kick-ass drums you've ever heard on an 8-bit sound chip.
Below is a list of the most important features of the Intellivision Music Tracker:
- Pattern-based song sequencing, with support for an unlimited number of patterns.
- Supports up to six independent sound channels, updated and playing simultaneously.
- Full 6-note polyphony; 5-note polyphony, with one drum channel; or 4-note polyphony, with two drum channels.
- 64-point user-defined software envelopes.
- 4-step pitch effects (e.g., arpeggios).
- Vibrato effects configurable with 3 levels of depth.
- Simple programmable drum sound synthesizer.
- Supports up to 85 individual instrument definitions with independent envelopes, and pitch and amplitude modulation effects.
- Supports over 40 individual drum instrument definitions per song.
- Global master volume control.
- Dynamic active channel selection. (New!)
And if all of that wasn't enough, in a fantastic twist of fate, this new version includes support for IntyBASIC integration, making it dead-simple to incorporate the tracker in your own IntyBASIC games!
The standard distribution includes everything you need:
- Tracker v1.5 User Manual & Technical Guide.
- Tracker library and dependency modules.
- Interface modules for both Assembly Language and IntyBASIC programs.
- A global music definition file with useful predefined envelopes, effects, and drum sounds.
- Eight sample songs, including a cool drums solo showcasing the new drum sounds.
Along with the standard distribution, I include below an "IntyBASIC SDK" project with an example program illustrating how to use the tracker from IntyBASIC.
Current Revision #3 (2021-02-03)
- Tracker v1.5 User Manual & Technical Guide.pdf - User Manual
- trk-distro-rev4.zip - Standard Distribution
- trk-demo (IntyBASIC).zip - IntyBASIC SDK Project
And for those who do not want to build or compile the project to check it out, below are some MP3s exported from the emulator playing the sample songs:
- butterfly-remix.mp3 - Flight Of The Butterfly - By @carlsson
- demo-remix.mp3 - Demo Song (Remix) - By @Arnauld
- drums-demo-808.mp3 - Drums Demo (Funk My Drum Machine) - By @DZ-Jay
- space-music.mp3 - Journey Through The Stars (Space Music) - By @carlsson
- voyage-remix.mp3 - Voyage Theme - By @carlsson
- beatit-remix.mp3 - Beat It (Remix) - By Michael Jackson (originally tracked by @Nyuundere, remixed by @DZ-Jay)
One of my goals in documenting the data format so thoroughly was to enable the creation of MOD-to-Inty or MIDI-to-Inty programs to convert standard music files to the Intellivision Music Tracker format. I hope others will take inspiration of this project and contribute to this effort. Let us enrich the musical library of the Intellivision and expand the pool of musicians working on it.
Many thanks to Arnauld Chevallier for the original software and for his many contributions to this community.
Now, go make some cool music!
Cheers!
-dZ.
Latest Version Release Notes:
- NEW: Instrument envelopes now recycle indefinitely, by backtracking a number of sample points from the end. The backtracking offset is configurable with a global constant.
- FIXED: Optimized the code for size and speed to compensate for additional code brought in by recent enhancements.
- FIXED: Changed the behaviour of "NULL" events that include instrument changes, to reset the channel counter. The old behaviour is believed to be a bug.
- FIXED: Included the latest version of IBN-to-IMT conversion tool.
UPDATES:
2021-01-10: Updated attachments of library distribution to revision #1.
2021-01-22: Updated attachments of library distribution to revision #2.
2021-02-03: Updated attachments of library distribution to revision #3.
2021-03-07: Updated attachments of library distribution to revision #4.
-
7
-
1
-
21 minutes ago, Vincehood said:24 bits did not help. However when I open and re-save the generated 32 BMP with another editing tool such as Pixen or some online tool, it seems to work!
Thanks
That's weird. I've never had trouble opening GIMP-generated BMPs in Windows as any other file. However, I do not use IntyColor, so I don't know what its limitations are regarding the format.
Good thing you got it working! :)
-dZ.
-
1
-
-
Hmm ... I would imagine that it should just be without Run-Length Encoding. Try with 24 bits, just in case -- I thought that was the maximum depth; but other than that, I don't know why it would fail, sorry.
-dZ.
-
1 minute ago, Vincehood said:Hello,
I was aware of Photoshop but GIMP looks indeed like a great open source alternative.
Any particular setting to use in GIMP when exporting to BMP? I tried to process a resulting image through Intycolor and get the error message: "Cannot handle compressed input files (codec 0x00000003)"
Thanks
/Vincent
You select the menu File > Export As..., then either select "Windows BMP Image" as the file type, or use the default "By Extension," and give it the extension "BMP".
That should work.
-dZ.
-
5 hours ago, 8bitgamer said:Oh, cool!
I've never played Stay Frosty 2, but it looks fun!
Well, I forgot to mention that it's for the Atari VCS. It is a lot of fun (although I like Christmas Carol better). And just to keep it à propos, I do play it on my Intellivision: using the System Changer. :)
-dZ.
-
1
-
-
Hey! That's my favorite Christmas game too! 👍🏻
I also enjoy Stay Frosty 2 quite a lot.
dZ.
-
1
-
-
I use GIMP for all that. It's open source, free, and rather powerful. It also allows you to re-scale images without absolutely no interpolation filter, which essentially lets you blow up images while retaining their pixelation and color palette. That's some if that Pixelmator (Mac) and Paint.Net (Windows) can't do, which are other graphics programs I use.
dZ.
-
2
-
-
1 hour ago, Sinjinhawke said:It's Christmas Eve day and I'm waiting for my boss to say "take the rest of the day off Chris, it's Christmas Eve". So far he hasn't and I think he signed off for the rest of the day. Worst boss ever.
Decided to play some Christmas Carol for the first time since it's raining and I don't like running in the rain during winter.
Fantastic game but now I feel stressed out. That ghost. That f#@%ing ghost. I hates it. I hates is forever.
Nah, he's not too bad. Just remember that he runs at you when you pick up a present, so if you are about to pick up one and he is close by, you may want to wait for him to go away, or aim for another present.
Also, as described in my comments above, he will stop every so often to look around. At that point, he won't notice you picking up presents, so it's a good time to go for it.
1 hour ago, Sinjinhawke said:First game got under 300 points. 2nd game got 723 points and made it to level 10.
Ah! That's a great score, really! Level 10 of 16, that's 5 stages of 8, you're almost there -- you can save Christmas! 👍
-
2
-
-
5 hours ago, Zendocon said:Funny you mention Cloudy Mountain. I reverse engineered that game some time ago, and also deconstructed the cave generation routines. As for the "scrolling routine", I assume you mean the mechanics of scrolling in general. @nanochess' book "Programming Games For Intellivision" has the information you need.
Be aware that the book shows how to program games using IntyBASIC, so if you are planning on using IntyBASIC, reverse-engineering the Cloudy Mountain game or studying its disassembly may be a bit of overkill. Not a bad thing to do, just perhaps more effort than you need.
Take a look at Oscar Toledo's book mentioned above (also available as an eBook directly from the author's page). Many people have been able to do exceptionally advanced games armed merely with IntyBASIC and Oscar's book (and, of course, the help from people in this forum). IntyBASIC is not your regular interpreted microcomputer BASIC; it compiles into very efficient assembly language source code.
If what you are looking for is not in the book or in one of the examples that come with the compiler, just ask specific questions in this group, and someone will chime in rather quickly.
All that to say that, with the advent of IntyBASIC, programming games for the Intellivision is no longer an arcane art requiring pouring through disassemblies and debugger output -- although, of course, some still do just that for the fun of it. It's rather straightforward to create games much more complex than the original Mattel games, especially with 40 years of combined industry experience in building games, and a thriving community of helpful veterans.
And, of course, if you prefer to stick to Assembly Language (like some of us do), then there is also plenty of assistance, community experience, examples, and wholesale game source code available. Just ask.
-dZ.
-
2
-
-
You should check out jzIntv, which not only has the most accurate hardware emulator, but also includes a built-in fancy-pants debugger. It comes with a suite of tools, which include ... a disassembler. The debugger can also disassemble on the fly, so you're good to go for game analysis and reverse-engineering. It is a full-featured debugger, with breakpoints, memory watches, etc. It's just all in the command-line.
Check out the SDK-1600 which includes the emulator, assembler, disassembler, and all the rest of the tools and libraries. It is also fully documented.
http://spatula-city.org/~im14u2c/intv/
However, if what you want is to create games for Intellivision, your best bet is to use IntyBASIC, which is a compiled BASIC variant for the Intellivision that outputs assembly source code. The output of the IntyBASIC compiler is ready to assemble with the tools from the SDK-1600. It comes with documentation and plenty of examples. Check out the IntyBASIC SDK to get started:
There are scrolling examples in both the SDK-1600 (in Assembly Language) and IntyBASIC SDK (in BASIC), so you don't really need to disassemble Cloudy Mountain to figure it out (although you could still do that if you'd like).
The best thing is that the IntyBASIC SDK integrates all the necessary tools, the emulator/debugger, the compiler, and the assembler; so you can build your program, test it in the emulator, debug it in the debugger, and get it ready for production.
And of course ... if you have any questions at all, there are plenty of knowledgeable people in this forum.
-dZ.
-
1
-
-
8 hours ago, Rickster8 said:Check out the tips & tricks links I posted above, they should help. Or, if you are stuck on any specific level, just ask!
The best hint I can give anybody is this: ignore the candy, use the snowflakes sparingly, and just focus on getting the presents. The game may seem hard, mostly because it runs at a very fast pace; but it has some very predictable behaviour that allows you to beat it easily ... at least the first time around. :)
-dZ.
-
1
-
1
-
-
21 hours ago, Rickster8 said:Do the side buttons do anything beneficial in Christmas Carol? 🤷♂️
Nope, nothing. Only the disc.
-
Man ... I can't believe I've missed this so far! 😱😱
I'll try to put in some time for games this week ... it's been crazy!
For all of you stumbling your way through Christmas Carol, below are some tips & tricks I've posted in the past challenges to help you:
- https://atariage.com/forums/topic/205725-cvw-tips-tricks-countdown/
- https://atariage.com/forums/topic/246584-the-frosted-maze-solution/?tab=comments#comment-3388131
- https://atariage.com/forums/topic/205725-cvw-tips-tricks-countdown/?tab=comments#comment-2881155
- https://atariage.com/forums/topic/219214-2nd-annual-cvw-competition-december/?do=findComment&comment=2894996
- https://atariage.com/forums/topic/219214-2nd-annual-cvw-competition-december/page/27/?tab=comments#comment-2894974
Also, if anybody is having problems with the game (I think someone mentioned that it crashes), please make sure you get the latest ROM from the webpage:
Or just send me a PM and I'll try to figure out what's going on.
-dZ.
-
1
-
3
-
On 12/11/2020 at 1:42 PM, JasonlikesINTV said:The highest score I could find for Carol vs Ghost was 16,955.
https://web.archive.org/web/20161118202946/https://www.carolvsghost.com/cvw/2015/pg_leaderboard.html
Edit: Actually, it might be 29,159.
Actually, the world record is at 29,159 by @Fushek.
-
Os ofrezco mi pésame y sinceras condolencias, mi hermano. Yo no sé que sería de mi si mi esposa falleciera; así que ni me puedo imaginar el dolor y pena incalculable que debéis sentir por vuestra pérdida.
Consolaos, mi amigo, pues Rosa Nely ya con Dios descansa en paz, sin pena, sin dolor, sin temor.
Quedáis ambos en mis pensamientos y oraciones: Amor y paz a vos y vuestros.
dZ.
-
2
-
-
43 minutes ago, CrazyBoss said:Maybe I should try this
I still use homecreated batch files, that will do all the tasks and fire up jzintv if it didn fail, It even check for overflow of the dataareas, and suggest where to put the "org" statement in the code
You should give it a try -- the building and run scripts are rather comprehensive, and the environment is set up in a nice and organized way so that you don't have to fiddle with anything. Your overflow check sounds like a nice addition, so if you give me some details, I could incorporate it into the next version of the SDK.
-dZ.
-
1 minute ago, Zendocon said:I ordered a copy this morning. I think my wife will like it.
I got your order and I'll ship it this afternoon. Thanks!
-dZ.
-
1
-
-
There's still time to get your copy of the book by Christmas!
If you live in the United States, just select USPS Priority Mail when you order by Saturday, December 19th; or USPS Priority Express when you order by Wednesday, December 23rd.
For anywhere else, please visit the USPS Holiday Shipping Deadlines page for information on the available services and their respective deadlines for Christmas delivery.
For the next few days, I will be shipping the orders out on the same they they are placed (except on Sunday, when the post office is closed), so there's still a chance to receive it on time. Also, if you'd like your copy sign, just ask.
And of course, if you have any questions, problems, or any feedback at all, feel free to contact me directly via PM, or via e-mail at <[email protected]>.
Thank you all, and have a wonderfully Merry Christmas!!!
-dZ.
-
1
-
-
13 minutes ago, First Spear said:The number of folks that have the mental agility and Inty expertise to do this are fairly low.
Maybe 4 of you? 5? Anyway, it would be fun to have the extra functionality from Arnauld's tracker, maybe call it MUSIC2 or MUSICA commands?
One of my goals for the new Intellivision Music Tracker v1.5 was to adapt it to work with IntyBASIC. I think it's doable, I just haven't had a chance to play with it. Now that I am on vacation (finally), I'll see to releasing the new tracker library, the comprehensive manual I wrote, and the glue-code library to make it work with the IntyBASIC SDK.
-dZ.
-
2
-
-
39 minutes ago, intvnut said:jzIntv looks at the metadata in the CFG file, and/or .ROM files to decide whether to enable the ECS. Older versions didn't do that. Over the last few years, I've been trying to make jzIntv "smarter" in this regard.
I did not know that, thanks! 👍
-
I don't see the "-s1" to enable ECS in jzIntv ...
-dZ.
-
2 minutes ago, Jeffrey Bouchard said:Sadly, the link no longer works for me as it states 404 page not found
That's because the stupid forums software added a character at the end. Sorry, I missed that.
If you copy paste the link (rather than click it), it should work. The correct URL is:
https://www.carolvsghost.com/book
With nothing after "book". :)
-dZ.
-
1
-
-
I have just been made aware of this video by none other than @Gray Defender. It is a nice surprise and came completely unsolicited. He not only purchased a copy of the book, but was impressed enough to review it. My sincerest thanks go to him.
If anybody is curious about the book, how it looks, and what's in it, check out the review video for plenty of cool details! :)
Thanks again to @Gray Defender!!!
-dZ.
-
4
-

HTP.jpg.e447a565477e5163b9d34ed104fb05fb.jpg)
Intellivision Music Tracker Library
in Intellivision Programming
Posted · Edited by DZ-Jay
Everything you need to know -- from the most simple tracking concepts, to the low-level details of the song data structures -- is described in excruciating detail in the user manual document, complete with charts, illustrations, formulas, and data tables. And of course, if anybody needs help using the tracker in their programs, or encounters any problems, please let me know.
-dZ.