Jump to content
grafixbmp

Harmony tech specs/processor architecture

Recommended Posts

We're wrapping up the documentation and initial demo, it should be released tomorrow (as I'm joining some friends to go to the Texas Crawfish and Music Festival later today).

 

The initial demo will cover all of the Harmony functions with the exception of calling a User written ARM subroutine (it was added just a few days ago and I've not had time to write something for it). The initial demo consists of 6 examples (one per bank) that highlight specific features of DPC+.

 

The 2nd example shows off the DPC+ music support, which is quite a bit better than DPC. DPC was limited to square waves, DPC+ lets you create your own sound waves. The wave example includes:

Square Waves

post-3056-127212455618_thumb.png

Sine Waves

post-3056-127212460007_thumb.png

Sawtooth

post-3056-127212461016_thumb.png

and more!

 

The 6th example uses a 2 line kernel and does 29 TIA updates over those 2 lines. This allows both sprites to be multicolored, display both missiles & the ball, an asymmetrical play field and both the play field color and the background color changed on every scan line.

 

post-3056-127212424391_thumb.png

  • Like 2

Share this post


Link to post
Share on other sites

The demo is, the documentation on how to get it onto the Harmony Cart isn't.

 

I suspect, but don't know for sure, that batari wants to get the next BIOS in place to make that easier than it is now - "changes needed for a new release are to add multicart support for DPC+".

 

If you'd like to see it in action via Stella 3.1, here it is:

DPCplus.bin

 

Please note, this file will not work on the Harmony Cartridge.

 

Use GAME SELECT to cycle thru the 6 demos

 

Demo 0:

Data Fetcher Demo - draws and colors a sprite in 14 cycles. Use joystick to move, fire button to change shape.

 

Demo 1:

Music Demo - Left joystick can silence voices (using FIre, Right and Down). Right joystick changes waveforms (all directions + fire)

 

Demo 2:

Fractional Data Fetcher Demo - joystick up/down controls fractional increment.

 

Demo 3:

Random Number Demo - displays the 32 bit random number. Right to advance values, Left to go back to prior values, Fire to reset to initial value.

 

Demo 4:

Data Write Demo - shows how to write into the 4K Display Data Bank. It masks the sprite to make it go smoothly on/off the screen (ie: it doesn't wrap like in Demo 0). Hit FIRE to flip image, this shows difference between Write and Push.

 

Demo 5:

Fast Fetch Demo - enables special mode where it takes only 2 cycles to read DPC+ registers, which allows for 29 TIA updates over 2 scan lines. Left and Right joysticks move helicopters.

Share this post


Link to post
Share on other sites

The demo is, the documentation on how to get it onto the Harmony Cart isn't.

 

I suspect, but don't know for sure, that batari wants to get the next BIOS in place to make that easier than it is now - "changes needed for a new release are to add multicart support for DPC+".

 

If you'd like to see it in action via Stella 3.1, here it is:

DPCplus.bin

 

Please note, this file will not work on the Harmony Cartridge.

Well, it's worth mentioning that we can post a demo that does work on Harmony, but it must be loaded directly to the Harmony's memory to try it, which will overwrite the multicart BIOS. The multicart BIOS can be reloaded after trying the demo but some (or all) may not wish to do this. If anyone wants to see the demo on real hardware and doesn't mind reflashing their Harmony BIOS afterward, we can post a version that will work and instructions on how to upload it.

Share this post


Link to post
Share on other sites

Harmony ready binary

Harmony.bin

 

To send it to the Harmony, plug you Harmony into your computer and run the Harmony Cart program. On the BIOS Update tab you're going to do only Step 1. Click the ... button to select the Harmony.bin file, then click the Download EEPROM button. Once the download's complete unplug your Harmony Cart and put it into your Atari.

post-3056-127232937776_thumb.png

 

To restore the menu, use the same process as above, but select the appropriate eeloader file for your system (NTSC, PAL50 or PAL60)

post-3056-12723293846_thumb.pngpost-3056-127232938923_thumb.png

Edited by SpiceWare

Share this post


Link to post
Share on other sites

Progress so far on the ARM demo. 96x200 bitmap display being updated at 60 fps. The display is cleared during Over Scan and all the lines are calculated on the fly and plotted during Vertical Blank.

 

http://www.youtube.com/watch?v=QNkvn3_rnXU

 

The values at the bottom are the time remaining at the end of Vertical Blank and Over Scan. Hit the FireButton for more lines, but the screen will jitter as the code takes a tad too long to run in Vertical Blank.

 

Harmony ready binary, follow instructions in Post 32

Harmony.bin

Edited by SpiceWare

Share this post


Link to post
Share on other sites

Improved verison.

 

In the prior video you can see B-F time remaining (11-15 in decimal) in Vertical Blank. I was able to speed up the routines so 11-14 (17-20 in decimal) time is remaining. It's now fast enough that it doesn't jitter if you hit Fire to double the number of lines.

 

I also changed it so you control the rotation using left/right.

 

Harmony.bin

Share this post


Link to post
Share on other sites

We're testing preliminary support for custom bank switching in Multi Cart Mode.

 

http://www.youtube.com/watch?v=kxyU4cDEerk

 

There's still a couple issues we need to track down before it can be released.

 

We've also made changes to Stella so it will support both 29K and 32K DPC+ bin files, so you will only have to create 1 bin for distribution instead of separate "Stella" and "Harmony" bins. This will be available when Stella 3.1.2 is released.

Share this post


Link to post
Share on other sites

Thanks!

 

My folks are currently visiting from Trinidad, so there won't be anything new to show for at least a week.

 

Batari's still working out stuff with the new BIOS. Sorry this is taking longer than expected to this stuff released to y'all, but "real life" does take priority :)

Share this post


Link to post
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.

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