Seite 1 von 2

Wie füge ich ein Spiel in Mame32Plus ein???

Verfasst: So Mär 30, 2003 11:15 am
von Yogi
Mein Problem ist das ich Rage of the Dragons gerne in Mame32Plus spielen möchte. Meine Treiber txt ist vorhanden. Jedoch gibt es in Mame32Plus ja keine SRC>DRIVERS>neogeo.c Datei. Winkawaks wäre auch noch eine Möglichkeit.

Also wenn jemand weiß wie so was funzt der soll ma posten.

Verfasst: So Mär 30, 2003 1:10 pm
von Jezze
Es gibt (!) eine src/drivers/neogeo.c im Mame32 Plus! Source-Code und ein Driver für Rage of the Dragons (encrypted) ist in diese *.c auch schon eingebunden. Das einfachste wäre in der src/drivers.c die Zeile 4799 von TESTDRIVER( rotd ) in DRIVER( rotd ) zu ändern und dann neu zu kompilieren.

Aber wie schon gesagt der Driver ist nur für das encrypted ROM-Set. Für das decrypted Set solltest du noch folgendes in die src/drivers/neogeo.c und src/driver.c einfügen.

src/drivers/neogeo.c Zeile 4993

Code: Alles auswählen

ROM_START( rotdn ) /*decrypted*/
	ROM_REGION( 0x800000, REGION_CPU1, 0 )
	ROM_LOAD16_WORD_SWAP( "264-p1.bin", 0x000000, 0x400000, 0x6ad1042f )
	ROM_LOAD16_WORD_SWAP( "264-p2.bin", 0x400000, 0x400000, 0x2ab0625b )

	NEO_SFIX_128K( "264-s1.bin", 0xc155d4ff )

	NEO_BIOS_SOUND_64K( "264-m1.bin", 0x5228b801 )

	ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )
	ROM_LOAD( "264-v1.bin", 0x000000, 0x400000, 0x568a807b )
	ROM_LOAD( "264-v2.bin", 0x400000, 0x400000, 0x5ddb10fb)
	ROM_LOAD( "264-v3.bin", 0x800000, 0x400000, 0x1584cd66 )
	ROM_LOAD( "264-v4.bin", 0xc00000, 0x400000, 0xb8cfdd8 )

	NO_DELTAT_REGION

	ROM_REGION( 0x4000000, REGION_GFX3, 0 )
	ROM_LOAD16_BYTE( "264-c1n.bin", 0x0000000, 0x800000, 0xec9d18c0 )
	ROM_LOAD16_BYTE( "264-c2n.bin", 0x0000001, 0x800000, 0xb1069066 )
	ROM_LOAD16_BYTE( "264-c3n.bin", 0x1000000, 0x800000, 0x7e636d49 )
	ROM_LOAD16_BYTE( "264-c4n.bin", 0x1000001, 0x800000, 0x76892fda )
	ROM_LOAD16_BYTE( "264-c5n.bin", 0x2000000, 0x800000, 0x469061bc )
	ROM_LOAD16_BYTE( "264-c6n.bin", 0x2000001, 0x800000, 0x2200220a )
	ROM_LOAD16_BYTE( "264-c7n.bin", 0x3000000, 0x800000, 0xedda4baf )
	ROM_LOAD16_BYTE( "264-c8n.bin", 0x3000001, 0x800000, 0x82b1ba22 )
ROM_END
src/drivers/neogeo.c Zeile 5825

Code: Alles auswählen

DRIVER_INIT( rotdn )
{
	data16_t *rom;
	int i,j;

	neogeo_fix_bank_type = 1;	
	init_neogeo();

	/* thanks to Elsemi for the NEO-PCM2 info */
	rom = (data16_t *)(memory_region(REGION_SOUND1));
	if( rom != NULL )
	{
		/* swap address lines on the whole ROMs */
		for( i = 0; i < 0x1000000 / 2; i += 16 / 2 )
		{
			data16_t buffer[ 16 / 2 ];
			memcpy( buffer, &rom[ i ], 16 );
			for( j = 0; j < 16 / 2; j++ )
			{
				rom[ i + j ] = buffer[ j ^ 4 ];
			}
		}
	}
}
src/drivers/neogeo.c Zeile 6200

Code: Alles auswählen

GAME( 2002, rotdn,    rotd,     neogeo, neogeo,  rotdn,    ROT0, "Evoga / Playmore", "Rage of the Dragons (not encrypted)" )
src/driver.c Zeile 4801

Code: Alles auswählen

	DRIVER( rotdn )		/* 0264 (c) 2002 Evoga / Playmore Corporation */
Bei den Zeilen-Angaben hab ich mich auf den Source-Code von Mame32 Plus! 0.66.2 bezogen.

Verfasst: So Mär 30, 2003 1:12 pm
von Jezze
Die Folgende Beschreibung kannst du ignorieren, wenn du Mame32 Plus! schon einmal mit MinGW kompiliert hast.

Als erstes besorgst du dir die beiden Source-Teile und MinGW:
- Mame Source (0.66) von www.mame.net
- Mame32 Plus! Source (0.66.2) von mame.emusilent.net
- MinGW (2.0) von mame.emusilent.net

Entpacke den Mame Source nach c:\mame und dann den Mame32 Plus! Source in denselben Ordner und stimme zu, dass die vorhandenen Dateien überschrieben werden sollen. MinGW entpackst du in c:\mingw.

Dein Ordner-Struktur sollte nun so ausehen!
c:
+mame
--+extra
--+makelang
--+src
----+cpu
----+dbgfonts
----+drivers
----+includes
----+machine
----+sndhrdw
----+sound
----+ui
----+vidhrdw
----+windows
----+zlib
+mingw
--+bin
--+include
--+lib
--+mingw32


Öffne die Eingabeaufforderung von Windows und gehe in den Path c:\mame. Führe dort die env.bat aus indem du env eintippst und mit Enter bestätigst. Folgende Meldung sollte nun erscheinen: make WINUI=1, diesen Befehl tippst jetzt ein und bestätigst wieder mit Enter. Nun wird es eine ganze Weile lang dauern und nach etlichen Minuten Warterei sollte deine Mame32 Plus! Version kompiliert worden sein. (um den Emulator für Athlon Prozessoren zu optimieren, tippe zusätzlich zu make WINUI=1 noch ATHLON=1 ein)

Phu ... ganz schön viel Geschreibe, ich hoffe es klappt auch. :wink:

Verfasst: So Mär 30, 2003 2:54 pm
von Yogi

Verfasst: So Mär 30, 2003 4:42 pm
von Yogi
Also nach langem suchen geb ichs auf. Ich hab folgendes Problem.
Der Souce von Mame32 Plus v66.2 hat massenweiße Crc Fehler im Zip, so das ich es nicht entpacken kann. Sonst hab ich nur ältere Versionen gefunden. Wo soll eigentlich die env.bat zu finden sein. Beim Mame66 source oder mameplus source oder mingw??

Wenn du einen schon fertigen source hast könntest du ihn ja mal hochladen. Bis die das nähmlich mit dem Zip merken dauerts bestimmt noch ne weile

Verfasst: So Mär 30, 2003 4:55 pm
von spunky
der quellcode-rar-file ist in ordnung, besorg dir mal 'nen vernünftigen aktuellen packer. :idea:

Verfasst: So Mär 30, 2003 4:57 pm
von Yogi
hab den neuesten winrar und jetzt zum 4ten mal runtergeladen (darunter auch 2x winzip)

Verfasst: So Mär 30, 2003 5:01 pm
von Jezze
Hmm, also die RAR's haben keine CRC Fehler, die Connection zum Mame32 Plus! Server ist nur extrem lahmarschig. Ein Download-Manager sollte Abhilfe verschaffen, ich bevorzuge Reget Deluxe.

Die env.bat ist im RAR-File vom Mame32 Plus! Source-Code.

Was den Upload des Source angeht, mal sehn was ich da machen kann. Allerdings ist der Source den ich noch habe von der 0.65.2 Version und ich habe daran auch noch ein paar Kleinigkeiten geändert.

Vielleicht versuchst du's noch mal mit einem Download-Manager bevor ich den Source uploade, ist nämlich nicht grad wenig (knapp 13MB inklusive MinGW).

Verfasst: So Mär 30, 2003 5:13 pm
von Yogi
Ich hab´s jetzt insgesamt 5 mal probiert normaler download, mit Manager (Get Right, Modzilla) und verschiedene Entpacker. Jedesmal wenn ich entpacken will kommt die Meldung das der Kopf zertöhrt ist und dann jede Menge Crc Fehler.

Ja hast Recht deine ist zu groß. Ich geh mit nur 56K rein. Weißt du wo ich sonst noch den source von 32Plus herkrieg?

Verfasst: So Mär 30, 2003 5:30 pm
von FreddyFrost
Ich hab den Sourcecode mal auf meine Seite geladen. :D
Hab vorher mit WinRar 3.11 getestet. Keine CRC Fehler.

http://home.arcor.de/freddyfrost/source/

Wenn du da auch Fehler hast liegt das Problem bei deiner Leitung.

---EDIT---
Den Mame0.66 Source haste aber schon, oder ?

Verfasst: So Mär 30, 2003 6:22 pm
von Yogi
Du bist eben zu einem meiner Helden geworden.

Ja hab ich schon. Nur der Plus hat gefehlt.

Yeehaa

Verfasst: So Mär 30, 2003 7:55 pm
von Yogi
So so hab alles mal ausprobiert und nach reiflicher Überlegung fehlt mir 1 Romdatei

264-s1.bin

und die

264-m1 hat die falsche Länge (10000 statt 8000)

Wer sie hat der soll bitte posten

Verfasst: So Mär 30, 2003 10:57 pm
von Jezze
Die Links bitte nicht mit 'Ziel speichern unter...'
rotdn-264-m1.zip (CRC 5228B801)
rotdn-264-s1.zip (CRC C155D4FF)

Das 264-m1.bin, welches du sicherlich schon hast, ist korrekt. Die Meldung, dass ROM hätte eine falsche Länge liegt daran, dass beim Driver das ROM als ein 64K Sound Bios angegeben ist, was allerdings nicht stimmt. In Wirklichkeit ist ein 32K Bios was man auch an der Größe der Datei erkennen kann. Ich weiß nicht warum, aber ein Sound Bios, das nur 32K groß ist, wurde in der src\driver\neogeo.c nicht definiert, der folgende Code tut dies. (eine Möglichkeit warum ein 32K ROM nicht definiert wurde ist sicherlich die Tatsache, dass es das einigste Sound Bios mit dieser Größe ist und bis dato nicht offiziell unterstützt wird ... aber das nur nebenbei)

src\driver\neogeo.c Zeile 1131

Code: Alles auswählen

 #define NEO_BIOS_SOUND_32K(name,sum)  \ 
	ROM_REGION16_BE( 0x20000, REGION_USER1, 0 )  \ 
	ROM_LOAD16_WORD_SWAP( "neo-geo.rom", 0x00000, 0x020000, 0x9036d879 )  \ 
	ROM_REGION( 0x40000, REGION_CPU2, 0 )  \ 
	ROM_LOAD( "ng-sm1.rom", 0x00000, 0x20000, 0x97cf998b )  \ 
	ROM_LOAD( name, 0x00000, 0x08000, sum )  \ 
	ROM_REGION( 0x10000, REGION_GFX4, 0 )  \ 
	ROM_LOAD( "ng-lo.rom", 0x00000, 0x10000, 0xe09e253c )
Jetzt musst du allerdings noch das 264-m1.bin im DRIVER( rotdn ) als 32K Sound Bios angeben, dazu machst zu folgendes.

Ändere dies

Code: Alles auswählen

ROM_START( rotdn ) /*decrypted*/ 
	[...]
	NEO_BIOS_SOUND_64K( "264-m1.bin", 0x5228b801 ) 
	[...]
ROM_END
in das

Code: Alles auswählen

ROM_START( rotdn ) /*decrypted*/ 
	[...]
	NEO_BIOS_SOUND_32K( "264-m1.bin", 0x5228b801 ) 
	[...]
ROM_END
Diese Angaben [...] schreibst du natürlich nicht mit hin, sie sind nur Platzhalter die ich eingefügt habe um den restlichen Driver-Code anzudeuten.

ps: Es ist eigentlich nicht unbedingt erforderlich die Bios Angabe zu ändern, da Mame32 Plus! einem die Wahl läst ob man fortfahren möchten wenn, ein Fehler (falsche Länge bzw. falsche CRC) auftritt. Aber wir/ich wollen/will es perfekt haben. :D

Verfasst: Mo Mär 31, 2003 9:08 am
von Yogi
Hey Klasse Sache

Hattest Recht. Es funzt alles. Ich wollte noch Fragen ob sich die Zeilenangaben vor oder nach dem einfügen beziehen. Aber ich denke im Grunde ist es doch egal oder? Also ist schon klar das ich die rom_load16_Byte....... nicht unten bei game(2002.........
hinschreibe.

Auf jeden Fall ein riesiges Dankeschön an dich und den anderen die im gegensatz zu anderen Foren mal endlich echte Ahnung haben und wissen von was sie schreiben.

Verfasst: Mo Mär 31, 2003 9:40 am
von Yogi
Hallo nochmal

Ich muss leider noch einen Nachtrag schreiben.

Fredy Frost

Dein Mame32Plus gibt bei mir auch solche Fehler. Ich muss aber dazu sagen, das die CrC Felher nicht gleich am Anfang kommen sondern erst die Meldung, das der Kopf zerstöhrt ist und dann nachdem ich entpacke die CrC Fehler. Ich habe dann einfach ""zerstörte Dateien beibehalten"" gewählt und dann kompiliert. Meine Verbindung ist es nicht da ich den ganzen Tag sauge.

Macht das eigentlich was wenn ich einige Dateien mit den original Mame source lasse? Mir fehlen ca. 13 - 15 Stück. Aber so wie es aussiht keine sonderlich wichtigen. Naja jetzt geht das Spiel ja. Ich werde einfach auf eine neue Mame32Plus Version warten. Irgendwann werden die das Spiel schon eingefügt haben.