Jump to content
IGNORED

Voyage: An Intv Journey (@Party Demo)


DZ-Jay

Recommended Posts

OK, I managed to capture a video from my monitor using an iPad, encoded it at 720p 60Hz and uploaded it to Vimeo (I don't have a YouTube account).  It is now in the first post.  It's not ideal, but it showcases the demo better than 30 Hz.

 

Enjoy!

 

     - j.

  • Like 3
Link to comment
Share on other sites

  • 3 weeks later...

Hello,

 

It bothered me for some time that the drums in the demo songs did not sound right.  So I isolated the channel, did some tests, and discovered that indeed, the "noise" output was being disabled on all channels!  The result is that the drums are generated in pure tones, lacking the "punch" and "crack" that they should have.  It's a subtle change, but still perceptible, especially if you ever listen to the correct sound.

 

It turns out that this bug was introduced a few years back as part of a fix for some other defect in the 6-channel tracker.  I'm quite happy to say that this bug has finally been put to rest, and the drums are back and as punchy as they should ever be.

 

Anyway, in case anybody is interested, I've updated the first post with a fixed version of the ROM that includes the updated tracker.  If you'd played the demo before, you may want to check out this updated one, so you can listen to the 6-channel songs the way they were always intended.

 

     -dZ.

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Just now, First Spear said:

@DZ-Jay I appreciate your sharing this "officially"! Thank you!

Great coding is always a motivator!

 

Thanks.  I also plan to release the source code to the 6-channel tracker to the public domain soon.  I'm currently updating the documentation for the Intellivision Music Tracker to go with it.

 

    -dZ.

  • Like 1
Link to comment
Share on other sites

6 minutes ago, Intymike said:

Wait for the rocket to start:

 

 

 

Thanks for that, I see what you mean! ?

 

It seems to start specifically when the rocket comes in.  That's probably something in the demo code for that sequence; as you've already seen, I've already found quite a few places where the variables were not initialized correctly.  It makes sense that, since the noise generator was being suppressed with the broken tracker, this error went unnoticed -- until now that we have proper drum sounds.

 

I'll take a look and try to fix it tonight.  Would you mind testing again after?  Unfortunately I do not have the facilities to test on hardware right now.

 

Thanks a lot for your help!

 

    -dZ.

  • Thanks 1
Link to comment
Share on other sites

Just now, Intymike said:

I always thought that this supposed to be the rocket sound. But it's so harsh.

 

 

Oh nooooooo!  Not at all.  The music is supposed to continue seamlessly, but there is underneath a change in the engine state to start a new visual effects sequence.

Check out the AVI attached to the first post to see how it's supposed to sound (although that one was recorded from the noise-less-drums tracker).

 

Most of these bugs are now manifesting because of all the "improvements" I've done since the @Party in 2017.  Back then, we patched and hacked the code furiously to make it all work acceptably.

 

   dZ.

Link to comment
Share on other sites

Just now, DZ-Jay said:

Oh nooooooo!  Not at all.  The music is supposed to continue seamlessly, but there is underneath a change in the engine state to start a new visual effects sequence.

Check out the AVI attached to the first post to see how it's supposed to sound (although that one was recorded from the noise-less-drums tracker).

 

Most of these bugs are now manifesting because of all the "improvements" I've done since the @Party in 2017.  Back then, we patched and hacked the code furiously to make it all work acceptably.

 

   dZ.

 

Yes, I've seen it in your video.

 

Link to comment
Share on other sites

 

On 7/12/2020 at 12:17 PM, DZ-Jay said:

Color Plasma
A classic plasma effect in Color Stack mode done by cycling GRAM cards.

I must say, demo scene apps are great torture tests for emulators!

 

This particular effect is giving Argon fits... We'll have to see what we missed. Could you be more specific about the technique?

 

I'm wondering if it is something like on Atari where you can dynamically alter the pointer for the custom character set (CHARBASE) at any time.

 

Otherwise though, Argon is doing pretty well. We handle the 15hz flicker, percussion, etc. Just that the above technique is used a lot in Voyage!

Link to comment
Share on other sites

30 minutes ago, bhall408 said:

 

I must say, demo scene apps are great torture tests for emulators!

 

This particular effect is giving Argon fits... We'll have to see what we missed. Could you be more specific about the technique?

 

I'm wondering if it is something like on Atari where you can dynamically alter the pointer for the custom character set (CHARBASE) at any time.

 

Otherwise though, Argon is doing pretty well. We handle the 15hz flicker, percussion, etc. Just that the above technique is used a lot in Voyage!

 

Hi, @bhall408,

 

Could you describe what problem Argon is having with that effect?

 

The plasma does GRAM cycling, meaning that it reloads a set of pictures in Graphics RAM on every frame.  It's the most common and effective way to do graphics animations in the Intellivision.

 

That's the heart of the effect.  The plasma was pre-calculated, and multiple tables built with different cards and colors.  The background cards are then updated to "move" the plasma around, while the pictures themselves are changed to give different "levels" of density.

 

    -dZ.

Link to comment
Share on other sites

Thanks to @Intymike for helping me troubleshoot and test the demo ROM on real hardware, and for posting the video.  I can finally hear the drums, and I see a few more names in the scroll-text. :ponder:

 

I'll update the first post with the latest version as soon as the mods give me access to edit it.

 

Thank you all for watching! :music:

 

    -dZ.

  • Like 1
Link to comment
Share on other sites

I've updated the first post with a new ROM that fixes the Intellivoice crashing half-way through the demo.  Big thanks go to @Intymike for not only reporting the issue, but for going out of his way to test many, many revisions in different hardware configurations until we finally solved the problem. :)

 

This latest version includes the fixed drums, the fix to the Intellivoice crash, and a few more names added to the scroll-text segment.

 

     Enjoy!

      -dZ.

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, DZ-Jay said:

I've updated the first post with a new ROM that fixes the Intellivoice crashing half-way through the demo.  Big thanks go to @Intymike for not only reporting the issue, but for going out of his way to test many, many revisions in different hardware configurations until we finally solved the problem. :)

 

This latest version includes the fixed drums, the fix to the Intellivoice crash, and a few more names added to the scroll-text segment.

 

     Enjoy!

      -dZ.

 

It was a pleasure that I could help.

 

Link to comment
Share on other sites

18 hours ago, DZ-Jay said:

Could you describe what problem Argon is having with that effect?

 

The plasma does GRAM cycling, meaning that it reloads a set of pictures in Graphics RAM on every frame.  It's the most common and effective way to do graphics animations in the Intellivision.

In the spots with the cycling, we get the foreground graphics OK, but the background is just black.

 

Perhaps related, there are various scenes in the demo that have "orbiting" sprites, and some of them are rendering OK, and others ignored. 

 

- Orbiting disks for "Part 2" interstitial - missing

- Orbiting bubbles in rocket sequence - missing

 

However at 3:52, where there are orbiting sprites for the "Credits" interstitial, they DO show up.

 

So, is there a difference between those first 2 cases and the credits case?

 

And is that in common with the issue during the plasma sequence?

 

We're using miniExec if you think that would make a difference (ie, that the cycling requires a firmware routine not in miniExec)

 

Thanks!
 

ps- happy to set up any developers with the alpha version of Argon. Just PM me if interested. Public beta/open to all coming later this summer.

 

Screenshot_20200812-101306.thumb.png.ed701dc301ef8f253c18963c00404644.png
 

Link to comment
Share on other sites

1 minute ago, bhall408 said:

In the spots with the cycling, we get the foreground graphics OK, but the background is just black.

If that image in your post is a screenshot indicative of the problem, then it seems that the logo shows up but the plasma does not.  The logo is made up of MOBs (sprites), so that means that your emulator handles them correctly.

 

It's been a while since I've looked at it, but I believe that the plasma is drawn in the background and animated via two mechanisms:

  • The BACKTAB (the BACKground TABle) cells are modified periodically with new colors and custom character cards in GRAM (Graphics RAM).
  • The GRAM (Graphics RAM) custom characters are re-defined periodically.

I can't imagine why your emulator is not rendering the background, unless it does not support backgrounds using custom character cards from GRAM, or does not support the Color Stack mode.

 

1 minute ago, bhall408 said:

Perhaps related, there are various scenes in the demo that have "orbiting" sprites, and some of them are rendering OK, and others ignored. 

 

- Orbiting disks for "Part 2" interstitial - missing

- Orbiting bubbles in rocket sequence - missing

 

The orbs in both cases are implemented as MOBs (sprites), so I do not know why MOBs would show up in one part but not on another.  In the case of the "Part 2" interstitial, they fiddle with the "priority" bit on the "A" register of the MOBs, to make them go in front and behind the logo.

 

In the case of the rocket, the 8 MOBs are multiplexed at 30Hz across the orbs and the rocket exhaust.  The stars in the background are animated using the same two techniques mentioned above:  Cycling the GRAM cards through 8 different steps of a pixel shifted downwards, and updating the BACKTAB characters on every 8th step to "move" the character down.

 

Could it be that the STIC emuation in Argon does not support these rapid changes?

 

1 minute ago, bhall408 said:

However at 3:52, where there are orbiting sprites for the "Credits" interstitial, they DO show up.

 

Those are essentially the same as the other interstitial, but with a different movement pattern.  It's weird that one works but not the other.

 

1 minute ago, bhall408 said:

So, is there a difference between those first 2 cases and the credits case?

 

In general, I do not think so.  I'll take a look at the code to see if there are any specific nuances that differ between them.

 

1 minute ago, bhall408 said:

And is that in common with the issue during the plasma sequence?

 

The strange thing is that they do not seem to be related.  The plasma uses mostly the background and GRAM, and those do not show up in Argon; while the interstitial and rocket sequences use MOBs, which do not show up in Argon.

 

Then there's the case of the two very similar interstitial screens, where one works and the other doesn't.

 

1 minute ago, bhall408 said:

We're using miniExec if you think that would make a difference (ie, that the cycling requires a firmware routine not in miniExec)

 

It should not make a difference.  We do not touch the EXEC at all.  As a matter of fact, we use less of the EXEC than most games:  we intercept its bootstrap sequence much, much earlier than many others -- before the system is initialized and the cartridge header is read -- and take over from there.

 

(I just tested the demo with the "miniExec" to be sure, and it still ran normally on jzIntv.)

 

1 minute ago, bhall408 said:

Thanks!

No worries.  I'm sorry if the above is a bit vague, but most of the effects themselves were written by others, so I don't recall exactly what they are doing directly.  That said, the ZIP archived attached includes the "listing" file generated by the assembler, which should help illustrate the code that is executing at each point.

 

Let me know if I there is any more I can do to help you troubleshoot the problem.  If you'd like, send me a PM to continue the discussion.

 

     -dZ.

Link to comment
Share on other sites

5 hours ago, DZ-Jay said:

No worries.  I'm sorry if the above is a bit vague, but most of the effects themselves were written by others, so I don't recall exactly what they are doing directly.  That said, the ZIP archived attached includes the "listing" file generated by the assembler, which should help illustrate the code that is executing at each point.

Similar boat -- I have an engineering background, but I'm passing this on to the actual engineer ;-)

 

5 hours ago, DZ-Jay said:

Let me know if I there is any more I can do to help you troubleshoot the problem.  If you'd like, send me a PM to continue the discussion.

Thanks!

Link to comment
Share on other sites

2 hours ago, bhall408 said:

Similar boat -- I have an engineering background, but I'm passing this on to the actual engineer ;-)

 

Thanks!


Well, I worked on the sequencing engine and the 6-channel tracker mostly, and on micro-optimizations in the rest.  It's just that it's been 3 years. ;)

 

I can dig into it if necessary, if it would help.  I just need to know what you are looking for.

Link to comment
Share on other sites

3 hours ago, daldude said:

Could not get it to run on my Intellivision 2. It kept resetting back to the LTO Flash Cartridges Game Select Menu no matter what settings I used under Config (Pressing the 1 key on the keypad)

 

Are you using the ECS?


The ECS is required.  We bypass all standard bootstrapping, so no explicit check is performed at start up.
 

I should enhance the program to report an error if the ECS is missing.
 

   dZ.

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...