cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Problemi e soluzioni su configurazioni software, firmware
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

Sto cercando di realizzare un set completo dei kickstart e cartridge varie riconosciute dall'ultima versione del WINUAE.
Forse alcuni di voi non lo sapranno, ma all'interno del codice del WINUAE c'è una elenco dei file riconosciuti (completo di CRC32, SHA1 e SIZE).
Il file dove si trovano le informazioni è questo: https://github.com/tonioni/WinUAE/blob/master/rommgr.cpp
io mi sto basando sull'ultima versione del file disponibile (2.3.20 beta 1 del 6 marzo 2011).
ho recuperato quasi tutti i file indicati nel file (sono 124) e mi serve un aiuto per terminare la collezione (e poterla caricare nel Wiki)

all'appello mancano 3 file che si possono ottenere modificando altri file della raccolta (sto cercando di capire come):
- Freezer: Action Replay Mk III v3.09 EVEN
- Freezer: Action Replay Mk III v3.09 ODD
- CD32 ROM (KS + extended) REAL DUMP

un file che in realtà è solo un segnaposto perchè nessuno a ancora dumpato la rom:
- A4091 SCSI boot ROM
e due file che in realtà io ho, solo che sono criptati (li ho presi da amiga forever) e vorrei rendere disponibili le versioni decriptate i cui CRC32 sono riportati nel file:
- CD32 MPEG Cartridge ROM
- The Diagnostic 2.0 (Logica)


l'aiuto a qualcuno che sappia pasticciare un pò con il C è questo: realizzare un programmino che prena in input il file criptato e la chiave di decriptazione (che io ho) e in output fornisca il file decriptato.

l'algoritmo di decriptazione è presente nel file che ho linkato sopra, all'interno delle funzioni:
int decode_cloanto_rom_do (uae_u8 *mem, int size, int real_size

Codice: Seleziona tutto

int decode_cloanto_rom_do (uae_u8 *mem, int size, int real_size)
{
int cnt, t, i;

for (i = ROM_KEY_NUM - 1; i >= 0; i--) {
uae_u8 sha1[SHA1_SIZE];
struct romdata *rd;
int keysize = keyring[i].size;
uae_u8 *key = keyring[i].key;
if (!key)
continue;
for (t = cnt = 0; cnt < size; cnt++, t = (t + 1) % keysize) {
mem[cnt] ^= key[t];
if (real_size == cnt + 1)
t = keysize - 1;
}
if ((mem[2] == 0x4e && mem[3] == 0xf9) || (mem[0] == 0x11 && (mem[1] == 0x11 || mem[1] == 0x14))) {
cloanto_rom = 1;
return 1;
}
get_sha1 (mem, size, sha1);
rd = checkromdata (sha1, size, -1);
if (rd) {
if (rd->cloanto)
cloanto_rom = 1;
return 1;
}
if (i == 0)
break;
for (t = cnt = 0; cnt < size; cnt++, t = (t + 1) % keysize) {
mem[cnt] ^= key[t];
if (real_size == cnt + 1)
t = keysize - 1;
}
}
return 0;
}
static int decode_rekick_rom_do (uae_u8 *mem, int size, int real_size)

Codice: Seleziona tutto

static int decode_rekick_rom_do (uae_u8 *mem, int size, int real_size)
{
uae_u32 d1 = 0xdeadfeed, d0;
int i;

for (i = 0; i < size / 8; i++) {
d0 = ((mem[i * 8 + 0] << 24) | (mem[i * 8 + 1] << 16) | (mem[i * 8 + 2] << 8) | mem[i * 8 + 3]);
d1 = d1 ^ d0;
mem[i * 8 + 0] = d1 >> 24;
mem[i * 8 + 1] = d1 >> 16;
mem[i * 8 + 2] = d1 >> 8;
mem[i * 8 + 3] = d1;
d1 = ((mem[i * 8 + 4] << 24) | (mem[i * 8 + 5] << 16) | (mem[i * 8 + 6] << 8) | mem[i * 8 + 7]);
d0 = d0 ^ d1;
mem[i * 8 + 4] = d0 >> 24;
mem[i * 8 + 5] = d0 >> 16;
mem[i * 8 + 6] = d0 >> 8;
mem[i * 8 + 7] = d0;
}
return 1;
}
int decode_rom (uae_u8 *mem, int size, int mode, int real_size)

Codice: Seleziona tutto

int decode_rom (uae_u8 *mem, int size, int mode, int real_size)
{
if (mode == 1) {
if (!decode_cloanto_rom_do (mem, size, real_size)) {
#ifndef SINGLEFILE
notify_user (NUMSG_NOROMKEY);
#endif
return 0;
}
return 1;
} else if (mode == 2) {
decode_rekick_rom_do (mem, size, real_size);
return 1;
}
return 0;
}
qualcuno vuol darmi una mano? per ogni ulteriori informazione per risolvere questo problema chiedete pure, negli ultimi giorni sono diventato molto esperto di kickstart (per favore però, solo domande inerenti ai modi per completare il romset o decriptare le rom, niente richieste di download o simili)

questa sotto (spero si riesca a vedere sul forum, perchè è presa da un file Excel che ho realizzato) e la lista delle rom riconosciute da WinUAE

Codice: Seleziona tutto

ID	NAME	CHIP LABEL	VERSION				SIZE	ROMTYPE	CRC32	NOTE
0	Cloanto Amiga Forever ROM key						2069	KEY	869ae1b1	
1	KS ROM v1.0 (A1000)(NTSC)		1	0	1	0	262144	KICK	299790ff	
2	KS ROM v1.1 (A1000)(NTSC)		1	1	31	34	262144	KICK	d060572a	
3	KS ROM v1.1 (A1000)(PAL)		1	1	31	34	262144	KICK	ec86dae2	
4	KS ROM v1.2 (A1000)		1	2	33	166	262144	KICK	9ed783d0	
5	KS ROM v1.2 (A500,A1000,A2000)		1	2	33	180	262144	KICK	a6ce1636	
6	KS ROM v1.3 (A500,A1000,A2000)		1	3	34	5	262144	KICK	c4f0f55f	
7	KS ROM v2.04 (A500+)		2	4	37	175	524288	KICK	c3bdb240	
8	KS ROM v2.05 (A600)		2	5	37	299	524288	KICK	83028fb5	
9	KS ROM v2.05 (A600HD)		2	5	37	300	524288	KICK	64466c2a	
10	KS ROM v2.05 (A600HD)		2	5	37	350	524288	KICK	43b0df7b	
11	KS ROM v3.0 (A1200)		3	0	39	106	524288	KICK	6c9b07d2	
11A	KS ROM v3.0 (A1200) EVEN	391523-01	3	0	39	106	262144	EVEN	c742a412	
11B	KS ROM v3.0 (A1200) ODD	391524-01	3	0	39	106	262144	ODD	d55c6ec6	
12	KS ROM v3.0 (A4000)		3	0	39	106	524288	KICK	9e6ac152	
12A	KS ROM v3.0 (A4000) EVEN	391513-02	3	0	39	106	262144	EVEN	36f64dd0	
12B	KS ROM v3.0 (A4000) ODD	391514-02	3	0	39	106	262144	ODD	17266a55	
13	KS ROM v3.1 (A4000)		3	1	40	70	524288	KICK	2b4566f1	
13A	KS ROM v3.1 (A4000) EVEN		3	1	40	70	262144	EVEN	f9cbecc9	
13B	KS ROM v3.1 (A4000) ODD		3	1	40	70	262144	ODD	f8248355	
14	KS ROM v3.1 (A500,A600,A2000)		3	1	40	63	524288	KICK	fc24ae0d	
15	KS ROM v3.1 (A1200)		3	1	40	68	524288	KICK	1483a091	
15A	KS ROM v3.1 (A1200) EVEN	391773-01	3	1	40	68	262144	EVEN	08dbf275	
15B	KS ROM v3.1 (A1200) ODD	391774-01	3	1	40	68	262144	ODD	16c07bf8	
16	KS ROM v3.1 (A4000)		3	1	40	68	524288	KICK	d6bae334	
16A	KS ROM v3.1 (A4000) EVEN		3	1	40	68	262144	EVEN	b2af34f8	
16B	KS ROM v3.1 (A4000) ODD		3	1	40	68	262144	ODD	e65636a3	
17	KS ROM v3.1 (A4000T)		3	1	40	70	524288	KICK	75932c3a	
17A	KS ROM v3.1 (A4000T) EVEN	391657-01	3	1	40	70	262144	EVEN	0ca94f70	
17B	KS ROM v3.1 (A4000T) ODD	391658-01	3	1	40	70	262144	ODD	dfe03120	
18	CD32 KS ROM v3.1		3	1	40	60	524288	KICKCD32	1e62d4a5	
19	CD32 extended ROM		3	1	40	60	524288	EXTCD32	87746be2	
20	CDTV extended ROM v1.00		1	0	1	0	262144	EXTCDTV	42baa124	
20A	CDTV extended ROM v1.00 EVEN	252606-01	1	0	1	0	131072	EVEN | 8BIT	791cb14b	
20B	CDTV extended ROM v1.00 ODD	252607-01	1	0	1	0	131072	ODD | 8BIT	accbbc2e	
21	CDTV/A570 extended ROM v2.30		2	30	2	30	262144	EXTCDTV	30b54232	
21A	CDTV/A570 extended ROM v2.30 EVEN		2	30	2	30	131072	EVEN | 8BIT	48e4d74f	
21B	CDTV/A570 extended ROM v2.30 ODD		2	30	2	30	131072	ODD | 8BIT	8a54f362	
22	CDTV extended ROM v2.07		2	7	2	7	262144	EXTCDTV	ceae68d2	
22A	CDTV extended ROM v2.07 EVEN		2	7	2	7	131072	EVEN | 8BIT	36d73cb8	
22B	CDTV extended ROM v2.07 ODD		2	7	2	7	131072	ODD | 8BIT	6e84dce7	
23	CD32 MPEG Cartridge ROM		3	1	40	30	262144	CD32CART	c35c37bf	In Amiga Forever 2011 with name "amiga-ext-310-cd32-fmv.rom" encrypted (CRC32 57cae845)
24	A1000 bootstrap ROM						65536	KICK	0b1ad2d0	
24BIS	A1000 bootstrap ROM ALT						8192	KICK	62f11c04	
24A	A1000 bootstrap ROM ALT EVEN	252179-01					4096	EVEN | 8BIT	42553bc4	
24B	A1000 bootstrap ROM ALT ODD	252180-01					4096	ODD | 8BIT	8e5b9a37	
25	Freezer: Action Replay Mk I v1.50		1	50	1	50	65536	AR	d4ce0675	In Tosec with CRC32 f82c4258 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
25A	Freezer: Action Replay Mk I v1.50 EVEN		1	50	1	50	32768	EVEN | 8BIT	7fbd6de2	
25B	Freezer: Action Replay Mk I v1.50 ODD		1	50	1	50	32768	ODD | 8BIT	43018069	
26	Freezer: Action Replay Mk II v2.05		2	5	2	5	131072	AR	1287301f	In Tosec with CRC32 4051eef8 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
27	Freezer: Action Replay Mk II v2.12		2	12	2	12	131072	AR	804d0361	In Tosec with CRC32 d29bdd86 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
28	Freezer: Action Replay Mk II v2.14		2	14	2	14	131072	AR	49650e4f	In Tosec with CRC32 1bb3d0a8 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
29	Freezer: Action Replay Mk III v3.09		3	9	3	9	262144	AR	0ed9b5aa	In Tosec with CRC32 2c76df24 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
29A	Freezer: Action Replay Mk III v3.09 EVEN		3	9	3	9	131072	EVEN | 8BIT	2b84519f	
29B	Freezer: Action Replay Mk III v3.09 ODD		3	9	3	9	131072	ODD | 8BIT	1d35bd56	
30	Freezer: Action Replay Mk III v3.17		3	17	3	17	262144	AR	c8a16406	In Tosec with CRC32 009f7768 - il checksum è calcolato considerato i primi 4 byte come "00" (con questo metodo il SHA1 non risulta corretto)
31	KS ROM v3.1 (A4000)(Cloanto)		3	1	40	68	524288	KICK	43b6dd22	
32	KS ROM v1.3 (A3000)(SK)		1	3	34	5	262144	KICK	e0f37258	
33	Arcadia SportTime Table Hockey							ARCADIAGAME		
34	Arcadia SportTime Bowling							ARCADIAGAME		
35	Arcadia World Darts							ARCADIAGAME		
36	Arcadia Magic Johnson's Fast Break							ARCADIAGAME		
37	Arcadia Leader Board Golf							ARCADIAGAME		
38	Arcadia Leader Board Golf (alt)							ARCADIAGAME		
39	Arcadia Ninja Mission							ARCADIAGAME		
40	Arcadia Road Wars							ARCADIAGAME		
41	Arcadia Sidewinder							ARCADIAGAME		
42	Arcadia Spot							ARCADIAGAME		
43	Arcadia Space Ranger							ARCADIAGAME		
44	Arcadia Xenon							ARCADIAGAME		
45	Arcadia World Trophy Soccer							ARCADIAGAME		
46	KS ROM v3.X (A4000)(Cloanto)		3	10	45	57	524288	KICK	3ac99edc	In Amiga Forever 2011 with name "amiga-os-3x0.rom" encrypted (CRC32 2238b0b4)
47	Freezer: Action Replay 1200						262144	AR	8d760101	
48	Cloanto Amiga Forever 2006 ROM key						750	KEY	b01c4b56	
49	Arcadia OnePlay 2.11							ARCADIABIOS		
50	Arcadia TenPlay 2.11							ARCADIABIOS		
51	Arcadia OnePlay 3.00							ARCADIABIOS		
52	Freezer: Action Replay Mk I v1.00		1	0	1	0	65536	AR	2d921771	
52A	Freezer: Action Replay Mk I v1.00 EVEN		1	0	1	0	32768	EVEN | 8BIT	82d6eb87	
52B	Freezer: Action Replay Mk I v1.00 ODD		1	0	1	0	32768	ODD | 8BIT	40ae490c	
53	A590/A2091 SCSI boot ROM		6	0	6	0	16384	A2091BOOT	8396cf4e	
53A	A590/A2091 SCSI boot ROM EVEN	390388-03	6	0	6	0	8192	EVEN | 8BIT	b0b8cf24	
53B	A590/A2091 SCSI boot ROM ODD	390389-03	6	0	6	0	8192	ODD | 8BIT	2e77bbff	
54	A590/A2091 SCSI boot ROM		6	6	6	6	16384	A2091BOOT	33e00a7a	
54A	A590/A2091 SCSI boot ROM EVEN	390722-02	6	6	6	6	8192	EVEN | 8BIT	e536bbb2	
54B	A590/A2091 SCSI boot ROM ODD	390721-02	6	6	6	6	8192	ODD | 8BIT	c0871d25	
55	A590/A2091 SCSI boot ROM		7	0	7	0	16384	A2091BOOT	714a97a2	In Amiga Forever 2011 with name "amiga-boot-a590.rom" encrypted??? (CRC32 26b640b4)
55A	A590/A2091 SCSI boot ROM EVEN		7	0	7	0	8192	EVEN | 8BIT	a9ccffed	
55B	A590/A2091 SCSI boot ROM ODD		7	0	7	0	8192	ODD | 8BIT	2942747a	
56	A590/A2091 SCSI Guru boot ROM		6	14	6	14	32768	A2091BOOT	04e52f93	
57	A4091 SCSI boot ROM		40	9	40	9	32768	A4091BOOT	00000000	
58	A4091 SCSI boot ROM	391592-02	40	13	40	13	32768	A4091BOOT	54cb9e85	In Amiga Forever 2011 with name "amiga-boot-a4091.rom" encrypted??? (CRC32 b9796b2a)
59	KS ROM v1.4 (A3000)		1	4	36	16	524288	KICK	bc0ec13f	
59A	KS ROM v1.4 (A3000) EVEN	390629-02	1	4	36	16	262144	EVEN	58327536	
59B	KS ROM v1.4 (A3000) ODD	390630-02	1	4	36	16	262144	ODD	fe2f7fb9	
60	Freezer: Action Cart. Super IV Pro (+ROM v4.3)		4	3	4	3	170368	SUPERIV	e668a0be	
61	KS ROM v3.1 (A3000)		3	1	40	68	524288	KICK	efb239cc	
61A	KS ROM v3.1 (A3000) EVEN		3	1	40	68	262144	EVEN	286b9a0d	
61B	KS ROM v3.1 (A3000) ODD		3	1	40	68	262144	ODD	0b8cde6a	
62	Freezer: Action Cartridge Super IV Professional							SUPERIV	ffffffff	built-in - Included "ROM" is my hack, easy to use version of Super IV for WinUAE. (It is Super IV image ripped from loader program + relocated to special "safe" location)
63	Freezer: HRTMon v2.33 (built-in)							HRTMON	ffffffff	built-in
64	CD32 ROM (KS + extended)		3	1	40	60	524288 x 2	KICKCD32 | EXTCD32 | CD32	f5d4f3c8	plain CD32 rom
64BIS	CD32 ROM (KS + extended) REAL DUMP	391640-03	3	1	40	60	524288 x 2	CD32	a4fbc94a	real CD32 rom dump
65	Freezer: X-Power Professional 500 v1.2		1	2	1	2	131072	XPOWER	9e70c231	
65A	Freezer: X-Power Professional 500 v1.2 EVEN		1	2	1	2	65536	EVEN | SCRAMBLED | 8BIT	f98742e4	
65B	Freezer: X-Power Professional 500 v1.2 ODD		1	2	1	2	65536	ODD | SCRAMBLED | 8BIT	dfb9984b	
66	 AROS KS ROM (built-in)						524288 x 2	KICK	ffffffff	built-in
67	Freezer: Nordic Power v2.0		2	0	2	0	65536	NORDIC	a4db2906	
67A	Freezer: Nordic Power v2.0 EVEN		2	0	2	0	32768	EVEN | SCRAMBLED | 8BIT	b21be46c	
67B	Freezer: Nordic Power v2.0 ODD		2	0	2	0	32768	ODD | SCRAMBLED | 8BIT	96057aed	
68	Freezer: X-Power Professional 500 v1.3		1	2	1	2	131072	XPOWER	31e057f0	
68A	Freezer: X-Power Professional 500 v1.3 EVEN		1	2	1	2	65536	EVEN | SCRAMBLED | 8BIT	0b2ce0c7	
68B	Freezer: X-Power Professional 500 v1.3 ODD		1	2	1	2	65536	ODD | SCRAMBLED | 8BIT	34580c35	
69	Freezer: Nordic Power v1.5		1	5	1	5	65536	NORDIC	83b4b21c	
69A	Freezer: Nordic Power v1.5 EVEN		1	5	1	5	32768	EVEN | SCRAMBLED | 8BIT	dd207174	
69B	Freezer: Nordic Power v1.5 ODD		1	5	1	5	32768	ODD | SCRAMBLED | 8BIT	8f93d85d	
70	Freezer: Nordic Power v3.0		3	0	3	0	65536	NORDIC	72850aef	
70A	Freezer: Nordic Power v3.0 EVEN		3	0	3	0	32768	EVEN | SCRAMBLED | 8BIT	f3330e1f	
70B	Freezer: Nordic Power v3.0 ODD		3	0	3	0	32768	ODD | SCRAMBLED | 8BIT	ee58e0f9	
71	KS ROM v2.04 (A3000)		2	4	37	175	524288	KICK	234a7233	
71A	KS ROM v2.04 (A3000) EVEN	390629-03	2	4	37	175	262144	EVEN	a245dbdf	
71B	KS ROM v2.04 (A3000) ODD	390630-03	2	4	37	175	262144	ODD	7db1332b	
72	The Diagnostic 2.0 (Logica)		2	0	2	0	524288	KICK | SPECIALKICK	8484f426	In Amiga Forever 2011 with CRC32 9c75da4e
73	Cloanto Amiga Forever 2010 ROM key						1544	KEY	8c4dd05c	
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

nel frattempo, grazie a Toni Wilen (il programmatore di WinUAE) ho recuperato altre 2 rom mancanti.

ora questo è quello che rimane:

rom che si possono ottenere modificando altri file della raccolta (sto cercando di capire come):
- CD32 ROM (KS + extended) REAL DUMP
file criptati (devo trovare il modo di decriptarli):
- CD32 MPEG Cartridge ROM
- The Diagnostic 2.0 (Logica)


io ho bisogno di aiuto per i file evidenziati in rosso
Avatar utente
dR.pRoDiGy

Donatore
Moderatore F.E.E.L.
Moderatore F.E.E.L.
Messaggi: 3069
Iscritto il: 17/11/2009, 15:55
Medaglie: 1
Città: Prov_Milano_zona_Sempione
Grazie Inviati: 10 volte
Grazie Ricevuti: 17 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da dR.pRoDiGy »

pucci ha scritto: - CD32 ROM (KS + extended) REAL DUMP
file criptati (devo trovare il modo di decriptarli):
- CD32 MPEG Cartridge ROM
- The Diagnostic 2.0 (Logica)


io ho bisogno di aiuto per i file evidenziati in rosso
Ma per questi quindi non hai nemmeno l'algoritmo di decrittazione?
Se si tratta di fare un leggi-scrivi su file direi che non ci voglia poi molto.. :wink:
"Non si smette di giocare perché si diventa vecchi, ma si diventa vecchi perché si smette di giocare"

Immagine F.E.E.L. - FrontEnd (Emulator Launcher)
http://feelfrontend.altervista.org
https://github.com/dr-prodigy/feel-frontend/
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

l'algoritmo di decrittazione c'è, ed è nel sorgente di WinUAE, più precisamente delle funzioni che ho riportato sopra.

in pratica WinUAE ha bisogno delle rom "decriptate" e non quelle fornite dal pacchetto "Amiga Forever di Cloanto".

cosa fa quaindi? prende la rom "criptata", esegue quello che credo sia uno XOR usando una chiave di decriptazione (anch'essa fornita con Amiga Forever di Cloanto e che io ho) e ottiene la rom decriptata (quella che devo salvare)

questo passaggio lo fa addirittura quando fa lo scan delle rom disponibili, perchè WinUAE usa il CRC32 della rom decriptata per fare le verifiche, quindi è costretto a decriptarla (tutte le funzioni per il check delle rom disponiblli sono nel file che ho linkato https://github.com/tonioni/WinUAE/blob/master/rommgr.cpp)

ci ho ragionato su prima e stavo pensando che come dici tu, basterebbe mettere un bel breakpoint durante la funzione di verifica oppue in un punto successivo al carico della rom e quindi fare un bel dump su disco della porzione di memoria nella quale si trova caricata la rom (che nel caso di The Diagnostic 2.0 (Logica), dovrebbe essere la stessa porzione nel quale viene caricato il kickstart, visto che si sostituisce a questo).

certo che un programmino in grado di decriptare qualunque file in ingresso (ovviamente fornendo anche il file con la tabella XOR) sarebbe più carino, ma a me absterebbe anche la decriptazione ad hoc delle due sole rom indicate (che posso fornire io).

saresti in grado di darmi una mano al riguardo?

p.s.: credo che il sorgente di WinUAE sia compilabile con Visual Studio.
Avatar utente
dR.pRoDiGy

Donatore
Moderatore F.E.E.L.
Moderatore F.E.E.L.
Messaggi: 3069
Iscritto il: 17/11/2009, 15:55
Medaglie: 1
Città: Prov_Milano_zona_Sempione
Grazie Inviati: 10 volte
Grazie Ricevuti: 17 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da dR.pRoDiGy »

Beh ma io sinceramente, avendo già tutto pronto così, la farei molto più semplice..
Quel blocco di codice (molto breve, e aggiungendo un paio di funzioni chiamate già pronto per funzionare da solo) lo si può mettere in un programmino da 20 righe, e invece di leggere e scrivere un'area di memoria, gli si fa leggere un file, e riscrivere un altro file..

Quel che non ho capito però è come mai, se WinUAE esegue questo step in automatico, perchè ti serva farlo "fuori procedura".. <-think->
"Non si smette di giocare perché si diventa vecchi, ma si diventa vecchi perché si smette di giocare"

Immagine F.E.E.L. - FrontEnd (Emulator Launcher)
http://feelfrontend.altervista.org
https://github.com/dr-prodigy/feel-frontend/
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

dR.pRoDiGy ha scritto:Beh ma io sinceramente, avendo già tutto pronto così, la farei molto più semplice..
Quel blocco di codice (molto breve, e aggiungendo un paio di funzioni chiamate già pronto per funzionare da solo) lo si può mettere in un programmino da 20 righe, e invece di leggere e scrivere un'area di memoria, gli si fa leggere un file, e riscrivere un altro file..
ok, riusciresti a farlo? il test per vedere se funziona diventerebbe molto semplice visto che ho i CRC32 e SHA1 dei file decriptati
dR.pRoDiGy ha scritto:Quel che non ho capito però è come mai, se WinUAE esegue questo step in automatico, perchè ti serva farlo "fuori procedura".. <-think->
perchè voglio creare un romset completo e "reale" (quindi niente roms criptate) dei bios del WinUAE
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

pucci ha scritto:nel frattempo, grazie a Toni Wilen (il programmatore di WinUAE) ho recuperato altre 2 rom mancanti.

ora questo è quello che rimane:

rom che si possono ottenere modificando altri file della raccolta (sto cercando di capire come):
- CD32 ROM (KS + extended) REAL DUMP
file criptati (devo trovare il modo di decriptarli):
- CD32 MPEG Cartridge ROM
- The Diagnostic 2.0 (Logica)


io ho bisogno di aiuto per i file evidenziati in rosso
dopo aver rotto ancora a Toni Wilen in una lunga discussione (http://eab.abime.net/showthread.php?t=61002) ho recuperato anche questa CD32 ROM (KS + extended) REAL DUMP
ora rimen solo il problema delle due rom da decriptare:
- CD32 MPEG Cartridge ROM
- The Diagnostic 2.0 (Logica)

e potrò caricare nel wikifile il set completo
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

nel frattempo è uscita la nuova versione di WinUAE che corregge i problemi di input lag:

http://www.winuae.net/frames/download.html
Avatar utente
Kernel
God of Arcade
God of Arcade
Messaggi: 6794
Iscritto il: 25/07/2005, 10:54
Grazie Inviati: 2 volte
Grazie Ricevuti: 2 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da Kernel »

Testata (la beta. Dov'è la 2.3.3 finale?). Posso dire che finalmente su può avere un mouse reattivo e giocare ai flipper <-thumbup->
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4747
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 62 volte

Re: cercasi semiesperto linguaggio C per piccolo progetto WINUAE

Messaggio da pucci »

Kernel ha scritto:Testata (la beta. Dov'è la 2.3.3 finale?)
la 2.3.3 finale la trovi nel link riportato poco sopra (io l'ho scaricata ieri)
Rispondi

Torna a “Miscellanea software”