MV16 Cartridge

All about modules/digital tunes in a variety of tracker & sampled formats

Moderators: Mug UK, lotek_style, Moderator Team

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

MV16 Cartridge

Postby unseenmenace » Wed Oct 18, 2006 11:42 pm

Does anyone know the capabilities of the MV16 cartridge or have any technical documentation for it?
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Reply with MV16

Postby Argonaut » Fri Oct 20, 2006 5:42 pm

Here's a little code snippet from a ProTracker replay by Griff:

lea $fa0000,a0
move.b (a0,d7.w),d7 ; output (by input!!)

Where d7 is a 16 bit sample. Looks like you have to read a byte from an address($FA0000 to $FAFFFF) to play a sample!

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Postby Argonaut » Fri Oct 20, 2006 5:44 pm

Forgot to mention that this is obviously driven from an interrupt. Don't know if it has any DMA capabilities. Here's the full interrupt handler from Griff's player:

Code: Select all

; MV16 Catridge Output

MV16_Player:   move.l a0,usp
      move.w (a1)+,d7
      bmi.s .loopit
.contsnd add.w $800(a1),d7
      lsl #3,d7
      lea $fa0000,a0   
      move.b (a0,d7.w),d7     ; output (by input!!)
      move.l usp,a0
      rte
.loopit     lea sndbuff1(pc),a1
      move.w (a1)+,d7
      bra.w .contsnd

User avatar
daeghnao
Captain Atari
Captain Atari
Posts: 479
Joined: Wed Oct 27, 2004 12:41 pm
Location: York, UK
Contact:

Re: Reply with MV16

Postby daeghnao » Fri Oct 20, 2006 6:01 pm

Argonaut wrote:Looks like you have to read a byte from an address($FA0000 to $FAFFFF) to play a sample!


This is standard practice. The Atari ST hardware is set up so that it's not possible to write to the addresses occupied by the cartridge - the custom chips throw a wobbly. So instead, you reserve some part of the address space for "writing" and when you decode an access to one of those addresses, you use the bottom however-many bits of the address as the data.

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Re: Reply with MV16

Postby Argonaut » Fri Oct 20, 2006 7:01 pm

daeghnao wrote:
Argonaut wrote:Looks like you have to read a byte from an address($FA0000 to $FAFFFF) to play a sample!


This is standard practice. The Atari ST hardware is set up so that it's not possible to write to the addresses occupied by the cartridge - the custom chips throw a wobbly. So instead, you reserve some part of the address space for "writing" and when you decode an access to one of those addresses, you use the bottom however-many bits of the address as the data.


Interesting! I wonder if there's anyone on the forum with an MV16. The replay rout sounds very good even on an STFM so I imagine it's crystal clear on an MV16. I'm currently writing an STFM replay routine which is a hybrid of a number of different routines, which will leave all registers free though they'll obviously be a speed penality for this.

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Fri Oct 20, 2006 7:21 pm

Cheers Argonaut. I am struggling to make sense of that interrupt routine but it gives me something to think about :)
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Postby Argonaut » Fri Oct 20, 2006 9:32 pm

I can try to elaborate it a bit. It's not playing a whole sample but one 12-bit value from a sample(I made an error in the previous post by saying it was a 16-bit sample), so the interrupt routine is occuring at whatever frequency you want the sample to play at, e.g 15khz. Aren't you the guy coding the STe only remake of Turrican 2? If you want to make your STe replay routines support MV16 there might be a better way than what Griff is doing here. Anyway I'll add some comments into the replay routine.

Code: Select all

; NOTE: a1 and d7 are not usuable by the main code whilst this interrupt is running

; MV16 Catridge Output

MV16_Player:
   move.l a0,usp   ; save a0, quicker than pushing onto stack
   move.w (a1)+,d7   ; get the 9 bit sample (channels 1+2 added)
   bmi.s .loopit          ; negative value marks end of circular buffer
.contsnd
   add.w $800(a1),d7 ; mix in 9 bit sample (channels 3+4 added to 1+2)
   lsl #3,d7                ; make it a 12 bit sample - is this what MV16 supports?
   lea $fa0000,a0       ; base address of the cartridge 'write registers'   
   move.b (a0,d7.w),d7     ; read from base address + sample value, discard result
   move.l usp,a0   ; restore a0
   rte
.loopit
   lea sndbuff1(pc),a1  ; reset to start of circular buffer
   move.w (a1)+,d7  ; read first sample value
   bra.w .contsnd  ; and play it

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Postby Argonaut » Fri Oct 20, 2006 9:35 pm

Here's the full source to Griff's player. It's from an issue of Maggie, I forget which one.
You do not have the required permissions to view the files attached to this post.

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Error update

Postby Argonaut » Sat Oct 21, 2006 10:13 am

Was a bit late last night :?

The final sample prior to the shift is of course 10 bits, and then shifted to 13 bits. I guess given the name of the cartridge that it's probably a 16-bit replay :wink: So I assuming it is 16 bits replay we have 3 zero high bits and 3 zero low bits, which seems sensible when we don't have a 16 bit value to work with.

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Sat Oct 21, 2006 5:37 pm

Argonaut wrote:Aren't you the guy coding the STe only remake of Turrican 2? If you want to make your STe replay routines support MV16 there might be a better way than what Griff is doing here.

Yeah thats me :) Actually the MV16 query is connected with a sound project that I'm working on (just made notes so far) that is based on ideas I had for a new sound driver for Turrican Resurrection. Turrican itself will only use STE DMA and the YM for sure.

As for the MV-16 output code above I'm curious why it has a 10-bit value rather than an 8-bit one but I think you're right about it being a 16-bit cartridge but is it mono or stereo?
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

Argonaut
Atari maniac
Atari maniac
Posts: 77
Joined: Wed Sep 20, 2006 7:15 pm
Location: Tadley, UK
Contact:

Postby Argonaut » Sat Oct 21, 2006 7:00 pm

I look forward to seeing Turrican Ressurection. I know you posted a few previews and tests before but I missed the downloads. Got a current preview? ;-)

Anyway back to the MV16, don't know if it's mono or stereo, but in the example code it looks like it's just mono since it only writes one value, and actually mixes the left and right channels from the source buffers. There are some other replay routs in Griffs code that does output stereo and they don't mix the source buffers.

The reason that it ends up as a 10 bit value from the source buffers is because it's part of a ProTracker routine which is mixing 4 x 8-bit samples. 255*4 = 1020, which requires 10 bits to represent.

I haven't tried searching the net for MV16 related stuff but I guess there's not much info out there?!

User avatar
AtariFan
Captain Atari
Captain Atari
Posts: 181
Joined: Tue Jun 18, 2002 7:33 am
Location: Germany
Contact:

Postby AtariFan » Sun Oct 22, 2006 1:52 pm

Hi,

I found some small information about the MV16 online. Olivier Cordoleani, who was involved in the creation of BAT, said in an interview on http://www.aitpast.com/dossiers/interview_cordoleani/interview_cordoleani.htm:

Le jeu était livré sur Atari ST avec une cartouche MV-16 améliorant le son, B.A.T (avec le 2) semble avoir été l'un des seuls jeu à l'utiliser, pourquoi avoir utiliser cette cartouche ? les capacités sonores du ST ne suffisait-elle pas ?

Olivier: Elle nous permettait d'avoir 16 voix indépendantes, de libérer de la puissance CPU pour un meilleur SON. De plus elle était la base de notre système de protection contre la copie. Je n'ai jamais vu une copie de BAT marchée correctement. BAT, l'original, n'avait pas de BUG par contre les versions "crackées" ne l'étaient jamais complètement aussi le joueur commençait à jouer normalement mais très vite , les protections non enlevée provoquaient des disfonctionnements.

MUSIC MASTER est sorti peu après, c'était un séquenceur, échantillonneur exploitant pleinement la carte MV16.


I had my last French lessions years ago and I'm out of practice, but I think, Olivier said that the MV16 offers 16 independent channels (voices).

Perhaps Olivier can answer some technical questions about the cartridge. His website: http://www.cordoleani.com

On the website of "The Removers", I found a sound driver for yamaha chip and some other hardware extentions (MV16, ST Replay, P-Sound...):
http://removers.free.fr/softs/archives/stfa_202.zip

In issue 56 page 120 of the French ST Magazine there was a report about the MV16 (catégorie "Hardware/Périphériques") (http://fplanque.net/STMag/index.html). Perhaps the author of the website can send a scan of this page.

An image of the MV16 (boxed) is attached to this message (ripped from the internet - I was too lazy to search for my MV16 in the basement).

Gerry
You do not have the required permissions to view the files attached to this post.

User avatar
MiggyMog
Atari Super Hero
Atari Super Hero
Posts: 837
Joined: Sun Oct 30, 2005 4:43 pm
Location: Scotland

Postby MiggyMog » Sun Oct 22, 2006 3:03 pm

Maybe you could open the cart & get the details from the chip to obtain the datasheet from the net for a definitive spec?

Searching previous posts on this forum it looks like it may be a fairly simple DAC like the Playback cartridge only in 12/16 bit instead of 8-bit?
('< o o o o |''| STM,2xSTFM,2xSTE+HD,C-Lab Falcon MK2+HD,Satandisk,Ultrasatandisk,Ethernat.

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Sun Oct 22, 2006 3:36 pm

Sounds like it might be an interesting piece of kit. Mine is coming open at the side anyway so I shall dig it out later and photograph the insides and post on here. It would be cool to code something that makes good use of it.
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

User avatar
MiggyMog
Atari Super Hero
Atari Super Hero
Posts: 837
Joined: Sun Oct 30, 2005 4:43 pm
Location: Scotland

Postby MiggyMog » Sun Oct 22, 2006 4:18 pm

Have you played back tracker tunes using Audio scultpure on it?
('< o o o o |''| STM,2xSTFM,2xSTE+HD,C-Lab Falcon MK2+HD,Satandisk,Ultrasatandisk,Ethernat.

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Sun Oct 22, 2006 6:03 pm

MiggyMog wrote:Have you played back tracker tunes using Audio scultpure on it?

Actually no but I do recall that it had that option. I only fairly recently acquired the MV16 along with the game BAT off Ebay and was wondering what it was capable of. I will try and set an ST up in front of the TV some time this week and have a listen :D
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Sat Oct 28, 2006 11:07 pm

From the looks of the connections to the socket its only mono
You do not have the required permissions to view the files attached to this post.
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

User avatar
MiggyMog
Atari Super Hero
Atari Super Hero
Posts: 837
Joined: Sun Oct 30, 2005 4:43 pm
Location: Scotland

Postby MiggyMog » Sun Oct 29, 2006 3:03 pm

Data sheet for the one we have 2 of:-


http://www.bg-electronics.de/datenblaet ... 4LS374.pdf

Looks like the chips are not simple DAC's like the one found in the playback cartridge but instead it contains latch / flip flop circuits.

I'm pretty sure the little chip is an audio amplifier but I couldn't find the sheet for that.

I wish I'd paid more attention in technological studies.....
Last edited by MiggyMog on Mon Oct 30, 2006 7:46 pm, edited 1 time in total.
('< o o o o |''| STM,2xSTFM,2xSTE+HD,C-Lab Falcon MK2+HD,Satandisk,Ultrasatandisk,Ethernat.

User avatar
unseenmenace
Atari God
Atari God
Posts: 1961
Joined: Tue Sep 21, 2004 9:33 pm
Location: Margate, Kent, UK
Contact:

Postby unseenmenace » Sun Oct 29, 2006 7:29 pm

Well I don't know a lot about these things but it seems that each IC has 8 lines so with 2 of them that confirms the 16-bit part. The connections to the jack socket definitely denote a mono output. So with that and the code snippet from a few posts back it looks like we've got a reasonable idea of what the cart does.
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com

User avatar
beeka
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 139
Joined: Wed Jan 12, 2005 9:10 pm
Location: Hampshire, United Kingdom
Contact:

Postby beeka » Fri Nov 03, 2006 7:07 pm

Oooh, I've always wondered what was under the cardboard but was waiting for it to fall apart first!

It's been a few years since doing any electronics... but my guess is that the latches operate as two bytes of memory. The blue things are probably resistors and are essentially the DAC - a resistor network. The other bits might be an amplifier, but could easily be a voltage regulator / invertor to give 1v peak-to-peak (line level) output. I can't read the numbers on the small chip, and I can't remember if the mv16 had to be connected to an amplifier or just headphones.

The only thing I don't quite get is how this is mapped into the address space of the cartridge port. It will be something to do with the address lines on the port and wired to pin 11 on the 74LS374s (the clock signal). I guess I thought the decoding of the address space would need more than a diode (if that is even what is doing it). Maybe the mv16 is mapped into the cart port address space more than once?

Steve.


Social Media

     

Return to “The Digital Department”

Who is online

Users browsing this forum: No registered users and 1 guest