Jump to content

Photo

Games with Mockingboard Support


41 replies to this topic

#26 Blackbag OFFLINE  

Blackbag

    Chopper Commander

  • 138 posts
  • Location:Atlanta

Posted Fri Aug 22, 2014 8:03 AM

I've finished cracking the Ultima Trilogy disks that Tempest sent me. I want to test them over the next day or so and I'll upload them as a zip to Asimov and include the scans of the disk labels and some notes on the crack and a minor patch needed to use .dsk images in an emulator (original protection on Exodus 3 uses Volume IDs).

 

I ran into something interesting with Mockingboard support on the updated Ultima 3:Exodus  in the Ultima Trilogy. With an 8mhz Zip Chip on my IIe, I found that when I configured the mocking board's type and slot on the initial text screen at boot up the intro music would play fine. However, once you hit a key to proceed to the actual game, the disk drive would grind over and over and never load the game. If I rebooted and selected None for mocking board, it would then load fine and I could play the game (albeit, without mocking board sound). It did this with both mocking boards that I own. I pulled out every card that wasn't needed with the same results. Finally, I pulled another IIe off the shelf with a standard 65c02 1mhz cpu and it worked fine with either mocking board I tried. I think Zip claimed 99% compatibility with software... Figures that I would hit the 1% corner case 30 years later... :)

 

Rich


  • jhd likes this

#27 JamesD ONLINE  

JamesD

    Quadrunner

  • 7,866 posts
  • Location:Flyover State

Posted Fri Aug 22, 2014 9:21 AM

I've finished cracking the Ultima Trilogy disks that Tempest sent me. I want to test them over the next day or so and I'll upload them as a zip to Asimov and include the scans of the disk labels and some notes on the crack and a minor patch needed to use .dsk images in an emulator (original protection on Exodus 3 uses Volume IDs).

 

I ran into something interesting with Mockingboard support on the updated Ultima 3:Exodus  in the Ultima Trilogy. With an 8mhz Zip Chip on my IIe, I found that when I configured the mocking board's type and slot on the initial text screen at boot up the intro music would play fine. However, once you hit a key to proceed to the actual game, the disk drive would grind over and over and never load the game. If I rebooted and selected None for mocking board, it would then load fine and I could play the game (albeit, without mocking board sound). It did this with both mocking boards that I own. I pulled out every card that wasn't needed with the same results. Finally, I pulled another IIe off the shelf with a standard 65c02 1mhz cpu and it worked fine with either mocking board I tried. I think Zip claimed 99% compatibility with software... Figures that I would hit the 1% corner case 30 years later... :)

 

Rich

The Zip Chip is basically a 6502 with a faster clock, cache and a control circuit so the comparability issue is obviously related to timing in the Mockingboard specific section of code.
I'm guessing the clock select circuit of the Zip Chip slightly skews the clock and with the Mockingboard enabled the CPU isn't responding fast enough to read the start of a block of data.
The difference has to be small so it should be fixable. 



#28 Blackbag OFFLINE  

Blackbag

    Chopper Commander

  • 138 posts
  • Location:Atlanta

Posted Fri Aug 22, 2014 9:36 AM

The Zip Chip is basically a 6502 with a faster clock, cache and a control circuit so the comparability issue is obviously related to timing in the Mockingboard specific section of code.
I'm guessing the clock select circuit of the Zip Chip slightly skews the clock and with the Mockingboard enabled the CPU isn't responding fast enough to read the start of a block of data.
The difference has to be small so it should be fixable. 

 

True, but what's strange is that it's impacting the game's disk read code for some reason. It grinds and grinds, like it's stuck in a loop in the read code, and keeps recalibrating the head. Since it's on hardware and I don't have a clean way to break into the monitor, I haven't been able to inspect where it's getting looped at or trace back the reason why. Maybe I should dig out the Wildcard I picked up years ago and see if I can figure out how to use it to break into the monitor and find the PC and SP values and go from there...



#29 JamesD ONLINE  

JamesD

    Quadrunner

  • 7,866 posts
  • Location:Flyover State

Posted Fri Aug 22, 2014 12:10 PM

The Zip Chip is basically a 6502 with a faster clock, cache and a control circuit so the comparability issue is obviously related to timing in the Mockingboard specific section of code.
I'm guessing the clock select circuit of the Zip Chip slightly skews the clock and with the Mockingboard enabled the CPU isn't responding fast enough to read the start of a block of data.
The difference has to be small so it should be fixable. 

Compatibility.  I must have used the spell checker to fix a typo.
 

 

True, but what's strange is that it's impacting the game's disk read code for some reason. It grinds and grinds, like it's stuck in a loop in the read code, and keeps recalibrating the head. Since it's on hardware and I don't have a clean way to break into the monitor, I haven't been able to inspect where it's getting looped at or trace back the reason why. Maybe I should dig out the Wildcard I picked up years ago and see if I can figure out how to use it to break into the monitor and find the PC and SP values and go from there...

*IF* it throws off the start of the read by even a clock cycle, then it may miss the start of the track or sector if the developers tried to push the timing too close.
Something like this almost needs an in circuit emulator to track down.

Since it has to be an interaction thing and the only thing I can think of that might cause this is an issue with an interrupt.  
Perhaps the interrupt is delayed to the CPU by the Zip Chip circuit and the read is supposed to be timed off of the interrupt.
Someone with an a nice logic analyzer might be able to see if that is what is happening.  
The code may use different interrupt handlers for with or without the music player.  At the very least, it may spend more time doing something when supporting the Mockingboard.
You might be able to tell if there are multiple interrupt handlers or at least have a look at how it treats the Mockingboard differently.
If you could look for SEI and RTI instructions, changes to $03FE or even what is at $03FE, you might find the interrupt handler(s) or routines that set up the interrupt handler.
 



#30 Great Hierophant OFFLINE  

Great Hierophant

    Stargunner

  • 1,388 posts
  • Scribbler
  • Location:Massachusetts

Posted Fri Aug 22, 2014 3:44 PM

As for Ultima III, it would be great to have a pristine, fully working Mockingboard version.  I believe there are pristine disks of the original, non-Mockingboard version.

 

Does anyone know why the program always thinks the Mocking Board is in Slot #0?  Did Origin begin to implement a test, then abandon it prior to shipping the new version but fail to remove the text indicating a board had been detected?  



#31 Great Hierophant OFFLINE  

Great Hierophant

    Stargunner

  • 1,388 posts
  • Scribbler
  • Location:Massachusetts

Posted Fri Aug 22, 2014 4:07 PM

 

Thank you! It's amazing that so few people were aware of its availability. 

 

I think you're also right on the Mockingboard incompatibility. I wonder if this switch was made due to availability issues or there was some special technical reason for the switch?

 

Probably, the SC-02/SSI-263 is a substantially more advanced chip than the SC-01, and due to the packaging size, neither is a drop-in replacement for the other.

 

http://www.redcedar.com/sc01.htm



#32 Blackbag OFFLINE  

Blackbag

    Chopper Commander

  • 138 posts
  • Location:Atlanta

Posted Sat Aug 23, 2014 7:31 AM

As for Ultima III, it would be great to have a pristine, fully working Mockingboard version.  I believe there are pristine disks of the original, non-Mockingboard version.

 

Does anyone know why the program always thinks the Mocking Board is in Slot #0?  Did Origin begin to implement a test, then abandon it prior to shipping the new version but fail to remove the text indicating a board had been detected?  

 

I thought that it always assumed a Mockingboard was installed also, until I realized that once I cracked the disk, converted it to a disk image and ran it under Virtual ][, it went straight to the game and bypassed the Mockingboard set up screen, even though I had a Mockingboard emulated in slot 4 and it works with other games with Mockingboard support. So I dug into the code a little deeper and found that there is a Mockingboard detection routine in the code.
 
After the first/second stage boot code is executed and their DOS is loaded, code resumes at $8000.
Before the mockingboard detect code is run, there's a check for a keypress. If any of the following keys are held down,
it forces the mockingboard setup text screen to appear:
#$9D - Control-]
#$8D - Control-M (Return/Enter)
#$CD - M
#$DD - ]
Otherwise, it continues with the detection phase, which is located at $81c5. The interrupt handler is set to $8220, then it tries to configure the MB card starting with slot 1 and moving up. If a MB at that slot is initialized successfully, it will jump to the interrupt handler and store the slot number in $06, then return. If $06 is still zero, then no MB was detected otherwise it will contain the slot number of the detected MB.
 
It's interesting that they put in a force keypress to configure a MB card. This code is somewhat different from other MB detection code that I've seen in other games, which leads me to believe that there's really no reliable, standard way of detecting a MB, even within the same line of cards from the same manufacturer...
 
If the MB setup code continually pops up at boot, even though a MB isn't installed-- I guess it's possible that some other card is generating an interrupt and somehow the same memory locations are changed to appear as if a MB is installed. Really haven't looked at that too closely, but it does appear that the programmers were concerned with a real mocking board not being detected correctly. I wonder if the force key presses are described in the manuals.
 
RIch


#33 Tempest OFFLINE  

Tempest

    Monochrome Martinet

  • Topic Starter
  • 26,710 posts
  • Location:Accardi-By-The-Sea

Posted Sun Aug 24, 2014 6:54 PM

So will the newer SSI263 chip work with ANY of the older games that used speech?  Or do you absolutely 100% need the SC-01 chip?



#34 ianoid OFFLINE  

ianoid

    River Patroller

  • 2,846 posts
  • Location:TEXAS!!!

Posted Sun Feb 1, 2015 1:59 AM

Ooh, hey look- another game that purported supports Mockingboards!

 

http://www.ebay.com/...=item4ae439a7d3

 

Lancaster by Silicon Valley Systems



#35 Tempest OFFLINE  

Tempest

    Monochrome Martinet

  • Topic Starter
  • 26,710 posts
  • Location:Accardi-By-The-Sea

Posted Sun Feb 1, 2015 12:14 PM

That one is listed as using the Mockingboard but no one could get it to work.  Maybe the dump that's out there is bad?  Buy it and see!



#36 g0blinish OFFLINE  

g0blinish

    Star Raider

  • 73 posts

Posted Sun Sep 18, 2016 2:53 AM

if anyone knows, advice an example of MB speech, please



#37 First Spear OFFLINE  

First Spear

    Stargunner

  • 1,126 posts
  • Location:Somewhere in Uptown

Posted Sun Sep 18, 2016 5:31 PM


1. It would be cool to see a matrix with stuff that (tested) works with the Phasor in Mockingboard mode as well as the other modes. Of course that would probably only be worth something to me and the 2 other people on the planet with Phasors. :)

2. Bill, I didn't realize you had Apple ][ chops as well as Intellivision. Very cool!


If you're going to also add in the notes, you should also indicate that Ultima V supports two (dual) Mockingboards.
 
It will be quite the effort, but it would be great if eventually we also confirm the working versions of each of these, i.e., these actually do support the Mockingboard, and have links to the known good versions. These types of lists have been going around for some time now and there are still some questionable (not confirmed) entries.



#38 Great Hierophant OFFLINE  

Great Hierophant

    Stargunner

  • 1,388 posts
  • Scribbler
  • Location:Massachusetts

Posted Sat Jul 29, 2017 9:50 PM

I have spent the past two days cataloging the available software online for the Mockingboard and the attached spreadsheet is the result of my efforts.  It should give you a fair idea of what is available, what could be made available and what remains to be found and dumped.  

Attached Files



#39 Great Hierophant OFFLINE  

Great Hierophant

    Stargunner

  • 1,388 posts
  • Scribbler
  • Location:Massachusetts

Posted Sat Jul 29, 2017 10:54 PM

Updated with a new game.

Attached Files



#40 Bill Loguidice OFFLINE  

Bill Loguidice

    Quadrunner

  • 5,963 posts
  • Armchair Arcade Managing Director
  • Location:Central New Jersey, USA

Posted Sun Jul 30, 2017 10:55 AM

Updated with a new game.

 

The archive is empty. The earlier file works.



#41 Great Hierophant OFFLINE  

Great Hierophant

    Stargunner

  • 1,388 posts
  • Scribbler
  • Location:Massachusetts

Posted Sun Jul 30, 2017 10:58 AM

 

The archive is empty. The earlier file works.

 

Bizarre, try this :

Attached Files



#42 Bill Loguidice OFFLINE  

Bill Loguidice

    Quadrunner

  • 5,963 posts
  • Armchair Arcade Managing Director
  • Location:Central New Jersey, USA

Posted Sun Jul 30, 2017 11:09 AM

 

Bizarre, try this :

 

Thanks!





Reply to this topic



  


0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users