mame mame

    
 
Haze's MAME WIP

rss  Subscribe this feed

Recent Articles :
Last Article :
[18/01/2012 22:53] Sliver Place

Integrating FLAC isn’t the only thing I’ve been working on lately. After the initial work on FLAC (prior to the CHD bit) I decided to integrate some proper JPEG decoding libraries into MAME.

Why? Well, there is one game, which has been running in MAME for a while which actually uses JPEG decoder chips on the PCB. This game is the rather obscure ‘Sliver’. As a game, it’s not even remotely interesting, or good, but from a hardware perspective the pair of Zoran chips used to decode the JPEG images stored in the ROMs make it an interesting case.

Until recently MAME has simply loaded an extra ‘fake’ rom with the JPEG images pre-decoded, and used a look-up table in the driver to convert the addresses requested by the game for the JPEGS into addresses where our pre-decoded bitmaps were stored. Obviously this isn’t how the hardware worked ;-)

By integrating the JPEG library I’ve managed to remove the fake ROM, and can now point the decoder directly at the real JPEG data in roms as and when it’s requested by the game.


Sliver Sliver

Note, you can see ugly JPEG artifacting on the game screen, they obviously didn’t compress the images with very high quality settings ;-)

From an end-users perspective, the game still runs and plays exactly how it did before, but from a MAME perspective the emulation is now better, and we have a JPEG library to play with if we want it, maybe as an option when creating screen-shots at high resolutions where PNG becomes excessively large? Either way, it’s there and could be put to further use.

There is one other game which uses the same JPEG decoder chips on the board Magic the Gathering: Armageddon (Progettoemma link due to MAWS being down after it was used to hack MameWorld) Currently that game doesn’t work, but Phil Bennett was last seen getting some 3D out of it, so having a JPEG decoder should help him get the correct textures, which are encoded as JPEGs in the ROM.

As with the FLAC stuff, thanks also goes to R.Belmont for ensuring it compiles / works on Linux and Mac environments.

  
Kale's MAME WIP

rss  Subscribe this feed

Recent Articles :
Last Article :
[07/12/2011 15:16] Conformist Nonconformist

Another long standing bug fixed, this time with Joyful Road / Munch Mobile substained sounds.

Lord Nightmare did some studying of the schematics in there, and ended up with a bunch of unemulated ports that directly goes to the AY reset lines. Hooking that up makes the sound in this one to finally work.

  
Robiza's MAME WIP

rss  Subscribe this feed

Recent Articles :
Last Article :
[22/01/2011 16:53] Fixeight e i suoi cloni

Ha richiesto molto piu’ lavoro sia in fase di decrittazione per la presenza di opcode senza riferimenti negli altri giochi (kbash, dogyuun, vfife e batsugun) sia per la presenza di una EEPROM.

Alla fine, grazie al lavoro congiunto di me stesso, Haze a AWJ, siamo riusciti a implementare il sonoro. La conseguenza per ora è stata la necessità di creare un clone del gioco per ogni paese supportato (sono 14). Questo perche’ la EEPROM per ogni gioco è differente e pur essendo generabile dal codice del gioco, non è possibile attivare quel codice senza fare saldature nella PCB (questo per l’assenza di DSWs e Jumpers).

Nel caso in cui tramite i valori presenti nella EEPROM sia possibile variare altri parametri del gioco oltre al paese, tale implementazione è scorretta. Ci sarebbero nel caso due alternative: aggiungere dump di EEPROM di cui si ha la certezza della relativa presenza in sala giochi, o implementare un qualche sistema in gradi di riprogrammare la EEPROM (simulando ad esempio la presenza di jumpers nella PCB). Vedremo. Per ora accontentiamoci del sonoro.

 
--- © 2009 EMULAB - Webmaster Simone - Adviser Ricky74 ---