Ready64 Forum
Commodore 64 => Off Topic => Topic aperto da: Ammiraglio72 - 11 Marzo 2014, 20:06:42
-
Ciao a tutti , come da titolo vorrei chiedere a chi ne sa , se esisteva una cartuccia sprotettrice tipo la capitan miky o la action replay del c64 , e se la si trova come file crt per provarla col vice.
In alternativa anche una "recente" da provare sempre nel vice.
O ancora i metodi che si usavano (o che si possono usare) per dumpare qualcosa di protetto per il vic20 , ad esempio il tape del gioco bongo (16k) che nonostante il solo comando load , si da il run da solo per caricare il loader che poi carica il resto della cassetta.
Così giusto per fare una retro-chiacchierata e qualche esperimento.
Grazie.
Michele.
-
Se hai la cassetta o, meglio, il file tap della stessa, puoi usare tapclean per estrarre i vari "segmenti" e poi procedere con un "crack" classico:
http://sourceforge.net/projects/tapclean/ (http://sourceforge.net/projects/tapclean/)
Ovviamente sevono le "basi" di cracking su vic20...
-
Grazie per l'attenzione Flavio!
Aimè non ho le basi di crack per quello cercavo una soluzione "normale" , i prg che trova tapclean (o wav-prg) sono spezzoni "inutilizzabili" da soli , andranno probabilmente editati e uniti col monitor del vice ma io non lo so fare.
Speravo ci fosse una"capitanin miky" versione vic :(
Altra cosa che non so fare (e mi piacerebbe saperla fare) è manipolare i file cartuccia del vic20 per spostarli dal blocco memoria 5 (riservato alle rom/cartucce) al blocco memoria 2 (espansioni ram da 8k in su) in modo da trasformarli in normali prg.
Ho letto qualcosa du denial ma è un procedimento macchinoso per chi già ne sa di linguaggio assembler , figuriamoci pe me.
Se avessi a disposizione questi prg "derivati" li userei su un vero vic20 senza avere le cartucce.
Io nel mio piccolo ho fatto una modifica al registratore saldandoci due cavi jack nella mainboard uno che mi permette di dumpare (ho trovato la posizione in cui saldarlo mettendo la calza del jack a massa e provando i vari contatti in prossimità dei piedini degli integrati mentre girava una cassetta audio e il jack era inserito nella presa microfono del pc (si lo so è stato rischioso) , quando ho trovato il piedino in cui si sentiva bene e limpida ho capito che era quello giusto e per dumpare funziona alla grande.
L'altro jack saldato sempre su mainboard del c2n mi consente di usare il pc o un player di musica come cassetta e caricare i giochi in tap su un vero commodore (che sia vic o c64 o c16)
Mi domando se esista o se qualcuno sia in grado di farlo , un tool per vic20 (per c64 credo che non serva o che ci sia già) un tool per convertire i file cartuccia (che hanno diversi indirizzi di memoria a seconda del tipo) in prg normali.
Be sono andato un tantino OT ma tanto questa sezione è tutta ot :)
Se arrivano consigli , dritte per un inesperto di assembler come me , saranno bene accette.
Michele.
-
Allora...
Se mi fai avere il file TAP vedo se riesco a "spiegarti" alcune cose.
Nemmeno io sono un "esperto" di vic 20... ma amgari qualcosa facciamo =P
Per la "conversione" da -cartuccia- a -prg normale-...
non è impossibile ma... molto molto difficile.
Si tratta di rilocare TUTTO il codice, la grafica e quant'altro da una locazione ad un'altra.
Cioè un lavoro molto lungo, noioso e che richiede tanta, tanta pazienza prima di ottenere qualcosa di usabile realmente...
-
Grazie flavio.
Questo è il tap di bongo Bongo (https://mega.co.nz/#!uZ9XkJiR!_JvzfxxiHLp-YEVBii7KRVEcPapVw_C5N-QHfZ9OUX0)
sarebbe interessante capire come si cracca sul vic.
per quanto riguarda le cartucce si è esattamente come dici tu , però da profano mi chiedevo...
il comando "move" del monitor di vice?
che "Muove" da una locazione di memoria a un altra?
è applicabile (per chi sa usarlo) alla conversione cartucce?
-
il comando "move" serve per spostare blocchi di bytes da una locazione ad un'altra, ma NON riloca il codice.
cioé, se hai C000 JMP C010 e con move lo sposti a 1000, avrai 1000 JMP C010, ed é male.
Per non parlare degli indirizzamenti indiretti e l'allocazione della grafica.
-
ahahahaha no no , non è cosa per me :)
Grazie cmq dell'attenzione :)
-
Ti faccio un esempio con Bongo.
Sul tape sono presenti alcune routine, che fanno varie "cose" tutte finalizzate ad eseguire questo programmino basic:
9 poke36879,14:poke36869,205:poke36878,20:poke808,109:poke157,0
10 print"{dish}{swuc}{clr}{down}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{yel}b{wht}ongo"
11 print"{grn}{rght}{rght}{down}{rght}{rght}by udo gertz{rght}{rght}{rght}{rght}{rght}{down}{rght}{rght}{rght}{pur}@ {blu}1984 {yel}by kingsoft"
12 poke646,10:print"{rght}{rght}{rght}{rght}{rght}{rght}{down}{SHIFT-*}A{down}{left}{left}BC{down}{left}{left}DE{down}{left}{left}FG{down}{left}{left}HI{down}{left}{left}{left}{left}{left}{rght}OOOOOOOOOOOOOO"
13 print"{up}{up}{up}{up}{up}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rvon}uvwx{down}{left}{left}{left}{left}yz[\{down}{left}{left}{left}{left}]^_ {down}{left}{left}{left}{left}! #$":poke657,128
14 print"{up}{up}{up}{up}{up}{red}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rvon}{CBM-D}{CBM-Z}{down}{left}{left}{CBM-S}{CBM-P}{down}{down}{down}":poke4351,162
15 print"{yel}{down}{down}{rght}{rght}{rght}{rght}{rght}score table:{rght}{rght}{rght}{rght}{rght}{rght}{down}";:poke646,10:print"{rvon}~{up}{SHIFT--}{down}{CBM-*}{wht}{rvof}{rght}diamonds 100 -{down}{left}{left}{left}{left}{left}50";
16 print"0{rght}pts{yel}{rght}{rght}[ \ ] ^ _{rght}{rght}{rght}{wht}1000 pts{rght}{rght}{rght}{down}{blu}extra mouse every{yel}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{down}{rght}10000 pts";
10000 data 169,1,162,1,160,1,32,186,255,169,0,162,255,160,255,32,189,255,169,0,162,255
10100 data 16,255,32,213,255,169,7,141,167,3,76,137,82
10200 forx=0to34:ready:poke673+x,y:next
10300 sys673
Questo programmino non fa nient'altro che settare dei puntatori per la grafica e mettere in memoria una routine assembly che carica il successivo programma su nastro.
La routine asm è contenuta nei data presenti dalla linea 10000 in poi.
Questi "data" vengono "pokati" in memoria dall'indirizzo 673 in poi.
Il disassemblato di questa routine è
.C:02a1 A9 01 LDA #$01
.C:02a3 A2 01 LDX #$01
.C:02a5 A0 01 LDY #$01
.C:02a7 20 BA FF JSR $FFBA
.C:02aa A9 00 LDA #$00
.C:02ac A2 FF LDX #$FF
.C:02ae A0 FF LDY #$FF
.C:02b0 20 BD FF JSR $FFBD
.C:02b3 A9 00 LDA #$00
.C:02b5 A2 FF LDX #$FF
.C:02b7 10 FF BPL $02B8
.C:02b9 20 D5 FF JSR $FFD5
.C:02bc A9 07 LDA #$07
.C:02be 8D A7 03 STA $03A7
.C:02c1 4C 89 52 JMP $5289
L'istruzione che vedi a $02c1 è JMP $5289.
Questo indirizzo ($5289) corrisponde all'indirizzo di partenza del game vero e proprio.
Diciamo che il programmatore ha scelto un modo un po' strano per inizializzare il tutto ed eseguire il gioco, ma diciamo che per mantenere il gioco funzionante al 100% ciò che serve sono le poke alla linea 9 del listatino basic qui sopra, e l'ultimo file presente su nastro, che è il gioco vero e proprio, che viene caricato dall'indizzo $1400 a $6000.
Per usare questo gioco serve un espansione da 16k.
Con qualche piccola modifica si potrebbe crearne una versione su disco fedele all'originale, anche nel metodo "strano" di inizializzazione e caricamento.
Diciamo che prendere questi due files e salvarli su nastro, togliendo conseguentemente la procedura di "autorun"... è un crack per vic 20...
-
quindi se prendessi/estraessi l'ultimo prg dal nastro (il gioco vero e proprio)
e agiungessi queste 2 linee di basic:
10 poke808,109:poke157,0
20 sys5289
il tutto "dovrebbe" funzionare?
Se si come si modificano/aggiungono linee basic a un programma in linguaggio macchina già caricato in memoria? (es. salvato e poi ricaricato col monitor del vice ma che non ha nessuna linea basic con la sys di partenza?)
grazie.
-
Io metterei tutta la linea 9:
9 poke36879,14:poke36869,205:poke36878,20:poke808,109:poke157,0
e poi la sys di partenza non è 5289, ma la sua "conversione" da esadecimale a decimale, cioè 21129.
Potresti provare a creare queste due linee basic e poi dal monitor di vice caricare il gioco vero e proprio da $1400 col comando load... magari avendolo salvato in precedenza prima "della prima" esecuzione.
Edit: ho provato e la tua idea funziona, ma ci sono dei problemi con la tastiera... il gioco sembra non ricevere i "comandi"...
Magari ci siam dimenticati qualche "poke" ... =P
-
No tranqui non è colpa tua/nostra :)
Questo tap l'ho trovato così (non ricordo dove)
ricordo però che parecchi anni a dietro notai che sto tap funzionava senza problemi con emulatori come paul (non ricordo il resto del nome) e col mess (all'epoca i pc giravano con win98)
mentre sul vice ha sempre avuto un difetto..
se lo carichi a velocità normale , quindi ti prendi un caffè , fai la spesa e torni (e lo trovi ancora in caricamento) :) sul vice funge , se invece accelleri col warp (come penso che facciano tutti) si pianta li alla schermata e non riconosce nessun tasto che premi.
Ricordo anche che scrissi una mail (in italiano) a un componente del vice team (non ricordo chi) che aveva un cognome italiano e si divertì che gli scrissi in italiano e mi spiegò che non lo era ma era solo di origini italiane.
Cmq mi disse che secondo lui il tap era difettoso e che la soluzione era un fix del prg e gentilmente mi mandò il prg fixato.
Ora però mi domando..
Ammesso che sia difettoso perchè su altri emulatori (2 diversi tra loro) funzionava senza problemi e sul vice si piantava quando lo acceleravi?
Gli suggerii di indagare sul codice del vice lato vic 20 (di cui lui si occupava) ma non ebbi mai risposta .
Adesso cerco sto fix e te lo posto si sa mai scopri qualcosa :)
cmq per non perdere la traccia del mio post originale l'argomento sarebbe "metodi per craccare i giochi vic 20" (senza cartuccia visto che non esiste) :)
-
eccolo!
Bongo fix (https://mega.co.nz/#!2VFywAYQ!zuOPYRQI-jeKjetbt7VjVo3wEDW9j3YIqGB-ASheTwk)
-
Comunque funziona anche il veccio.
Eccoti la "versione disco" =P
Bongo.d64 (https://dl.dropboxusercontent.com/u/93655104/bongo.d64)
-
non mi funge il link (edit adesso si)
:(
-
Grazie 1000 flavio!
Adesso sai che faccio?
"Provo" a fare un tap col prg da te craccato ma stavolta in superturbo (dovrei avere una versione vic20 da qualche parte)
e col cavetto audio lo carico sul vero vic20 col mio c2n modificato ;)
peccato non si possa fare lo stesso con le cartucce :(
Però....
ho trovato questo , ma non ho capito di che parlano , credo che ci voglia un loader.
Da Cartucce a PRG (http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?p=3585)
-
1) credo che il turbo tape dovrebbe essere pensato per funzionare con un espansione di memoria, altrimenti non potrai usarlo;
2) in quel thread si parla di come dumpare una crt su rh, ma per usare l'immagine ottenuta serve un espansione di memoria che usi i banchi 1 e 3 al posto di 1 e 5 come avviene con la normale edpansione da 16kb.
Quindi serve una modifica hardware sull'espansione.
-
mannaggia...
-
Ecco il turbo tape
Turbo Tape vic20 2.0 (https://mega.co.nz/#!XFdUjTDZ!7xgkB7DyzIXyGMvTIZILFtb_Sa0RceUTIwFr_qgYehI)
e Bongo col turbo
Bongo Turbo (https://mega.co.nz/#!rN9lFYCB!JqMLEPGJZbcealWCOg3XsG-d4gRrdea4h0n0FqYSeCc)
è incredibile la differenza di tempo.
:)
ora lo riprovo su macchina reale ma in turbo.
-
Funziona sul vic reale ;)
caricamento in meno di un minuto
-
L'ho provato velocemente su emu e direi che funziona bene.
Credo tu abbia appena fatto il tuo primo crack su vic20.
=)
-
azz sono un cracker :P
-
Flavio ho provato a rifare il tuo procedimento , maaa....
come hai fatto a bloccare l'esecuzione del primo loader e quindi ottenerne il listato?
-
Io ho estratto tutti i segmenti col TapeClean, ma potresti su rh o su vice "segnarti" la fine del primo caricamento (primo file bongo), resettare il vic e poi procedere al caricamento del primo file presente sul nastro, che in questo caso sarebbe il secondo...
Verrebbe caricato quello...
Praticamente sul nastro ci sono 2 files "BONGO"... e tu devi evitare di caricare il primo.
Su vice, se fai avanzare il contatore a circa 12, poi il file caricato è il "bongo" giusto...
-
hai notato il primo? quello che diventa lo schermo bianco con scritte rosse?
come cavolo si fa a inibire l'autorun di quello? così tanto per curiosità
e vederne il listato.
-
sto facendo altreprove con altri file , ma non capisco dove sbaglio...
so la sys di partenza
esempio
un programma va da 1400 a 3fff e la sya sys è sys8192.
apro vice scrivo una riga
10 sys8192
apro monitor di vice uso il comando load"nome.prg" 0
mi da il riscontro positivo che lo ha caricato da 1400 a 3fff
chiudo il monitor
digito list
la mia riga 10sys8192 è ancora li
se do il run il programma parte e va , se però prima lo salvo e poi lo ricarico si impalla e non va
dove sbaglio?
-
Devi salvare da 1201 a 3FFF.
Il vic inespanso ha l'area basic a 1001, mentre quello espanso a 1201.
-
Grande Flavio! ;)
adesso funziona :)
-
Per tornare un secondo a bongo, il contenuto del primo programma (quello che fa diventare lo schermo bianco e i caratteri rossi e carica e da l'autorun al loader che poi carica il gioco vero e proprio) è in codice macchina, che in assembly diventa:
.C:02a1 A9 81 LDA #$81
.C:02a3 8D 28 03 STA $0328
.C:02a6 A9 83 LDA #$83
.C:02a8 8D 02 03 STA $0302
.C:02ab A9 C4 LDA #$C4
.C:02ad 8D 03 03 STA $0303
.C:02b0 A9 4C LDA #$4C
.C:02b2 8D 77 02 STA $0277
.C:02b5 A9 4F LDA #$4F
.C:02b7 8D 78 02 STA $0278
.C:02ba A9 41 LDA #$41
.C:02bc 8D 79 02 STA $0279
.C:02bf A9 44 LDA #$44
.C:02c1 8D 7A 02 STA $027A
.C:02c4 A9 0D LDA #$0D
.C:02c6 8D 7B 02 STA $027B
.C:02c9 A9 52 LDA #$52
.C:02cb 8D 7C 02 STA $027C
.C:02ce A9 D5 LDA #$D5
.C:02d0 8D 7D 02 STA $027D
.C:02d3 A9 0D LDA #$0D
.C:02d5 8D 7E 02 STA $027E
.C:02d8 A9 09 LDA #$09
.C:02da 85 C6 STA $C6
.C:02dc A9 19 LDA #$19
.C:02de 8D 0F 90 STA $900F
.C:02e1 A9 02 LDA #$02
.C:02e3 8D 86 02 STA $0286
.C:02e6 A9 FD LDA #$FD
.C:02e8 8D 33 03 STA $0333
.C:02eb A9 22 LDA #$22
.C:02ed 8D 85 02 STA $0285
.C:02f0 4C 78 E3 JMP $E378
Lascio a te l'onore di -sfrugugliare- una memory map del vic20 per capire cosa faccia...
-
si ma chi gli da il run?
fa tutto da solo.
(anche il superturbo che ho usato io)
e se lo volessi bloccare e salvarlo?
(anche se immagino che serva a ben poco ) così solo per il gusto di fregarlo :)
oltre a questo c'è modo di ottenere "il cursore" (e quindi poter scrivere list o run ecc) dopo che un gioco o un programmino simile è partito?
(e eventualmente farlo ripartire)
Mi stuzzica sta cosa :)
quel poco che "credo" di aver capito è che il run è questo:
C:02f0 4C 78 E3 JMP $E378
-
quel poco che "credo" di aver capito è che il run è questo:
C:02f0 4C 78 E3 JMP $E378
Non so se credi "giusto"...
Controlla qui:
https://archive.org/details/VIC-20_Memory_M...Butterfield_Jim (https://archive.org/details/VIC-20_Memory_Map_1983_Butterfield_Jim)
Cerca info "in giro" e cerca di capire come funziona la cosa.
Provaci almeno, che poi ne riparliamo.
=P
-
ehehehehe
colpo basso :)
io il geroglifico non lo capisco :)
lo so che si dovrebbe studiare di più e chiedere di meno
ho provato in passato ma non ho alcuna base di partenza per iniziare ste cose pesanti.
in ogni caso grazie Flavio :)
grazie a te ho rivissuto un po il mio passato sul vic , con le espansioni , il turbo e quant'altro :)
-
Sta a te decidere quanta voglia hai di applicarti alla cosa.
Di certo, senza "studiare" non si va da nessuna parte.
Comunque si sta parlando di assembly, di locazioni, di bit, di bytes, di routines etc... etc...
Ti assicuro che quello che tu chiami "geroglifico" è molto più semplice di quanto sembri.
Per esempio.
.C:02a1 A9 81 LDA #$81
.C:02a3 8D 28 03 STA $0328
significa "carica l'accumulatore (LoaDAccumulator) col valore esadecimale 81, e scrivi il valore contenuto nell'accumulatore (SToreAccumulator) nella locazione di memoria $0328.
(Scrivere "esadecimale" o premettere ad un valore il carattere "$", ha lo stesso significato).
"#$81" significa "valore assoluto ( # )" $81", mentre se ci fosse stato scritto solo $81 senza il cancelletto, avrebbe significato che l'accumulatore andava -caricato- col contenuto della locazione $81.
Ora dovresti controllare tutti i valori presenti nella routine dopo istruzioni come STA $xxxx e capire (guardando sulla tabella di cui ti ho postato il link prima) a cosa si riferiscono...
Ci sarà il valore per il colore del bordo, quello dello sfondo, quello dei "caratteri"...
e tante altre cose...
-
:huh:
wow!!
:lol:
-
Per le cartucce qualcuno c'è riuscito ma io ovviamente non ci ho capito nulla ....
Omega Race (http://www.sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?f=2&t=446&p=3590&hilit=omega+omega+race#p3590)
-
Il metodo usato è esattamente quello che ti ho descritto io: va rilocato tutto il codice. A mano.
In più omega race occupa la stessa quantità di memoria disponibile sul vic inespanso, quindi é relativamente più semplice spostare le cose.
Altrimenti, in caso il gioco usasse più ram, servirebbe comunque un espansione e, salvo modificare in hw la cartuccia di espansione, lo stesso tipo di lavoro che vedi fatto in quel thread, ma su più dati.
-
se modifico la mia espansione 16k e abilito il blocco 5 dovrei riuscirci? ese si che tipo di modifica serve?
(riuscirci intendo dire semplicemente caricare le immagini dei dump così come sono)
-
Da quello che leggo in giro, non tutte le CRT dei giochi sono uguali.
I banchi allocati dipendono dal costruttore e, quindi, ti servirebbe una modifica "switchabile" in modo da allocare i banchi dove servono.
Purtroppo non ti posso aiutare con l'hw...
Servirebbe qualcuno bravo col saldatore che ti saprebbe indicare cosa tagliare/saldare per raggiungere lo scopo...
-
la mia exp è già switchabile 3/8/16k ma ovviamente non ha il banck 5
-
io ho 2 espansioni x VIC la vixen 16k e la vic 1111 sempre a 16k...
entrambe modificate per usare il banco 5 (A000) in questo caso tutte le cartridge anche senza SYS...con indirizzo (A000)
basta caricarle, fare un reset e PARTE IL GIOCO che potra esser "tolto" solo spegnendo la macchina...
esempio, AVANGER, RADARATRACE, OMEGARACE ecc...
per la cartridge doppio banco...si leziona prima il blocco 2 6000 si carica il primo file, si sposta il switch sul banco 5 (A000) , reset e parte il gioco
esempio..DEFENDER, DONKEYKONG, MSPACAMAN ecc...
quindi non serve nemmeno "spostare" i dati....funzionano cmq!
PER I VIC 20 non son mai esistite cartucce tutto fare tipo la NIKI o FINAL EXPANDER ecc...
per dumpare le cartucce , bisognava avere un multi slot , con interuttore su ogni singolo slot...in modo da inserire espansione di memoria (obbligatoria) e la cartuccia da dumpare...contemporaneamente.
e ovviamente un floppy possibilmente....
nei primi anni 80 quando presi il vic20 , lo presi usato anche se uscito da poco, e proprio con uno slot multi cartridge , insieme ad un espansione 16k e alcuni giochi su cartuccia...che per il vic 20, salvo rari giochi su disco/nastro cmq espansi...erano i più belli.
E grazie a qualche contatto americano, gia all'epoca, riusci a fare i primi DUMP da spedire, e incambio mi arrivarono giochi DUMP che qui da noi non si erano MAI visti se non sulle riviste americane COMPUTE! publicizzati....
eravamo in pochi ad avere il vic20...e in guerra con i spectrum 16K....
poi arrivo' il C64 ...dall'altra parte lo spectrum 48K...e gli smanettoni si centuplicarono...=)
-
Grazie anche a te Jimiz.
Ora la domanda che mi sorge è questa:
Con qualche programma per pc che manipola il codice macchina del vic20 con vari tools e scorciatoie , è possibile ottenere un dump di un file CRT convertito in PRG con i codici rilocati correttamente in maniera "automatizzata" dal programma stesso a seconda della exp di memoria che si intende usare? 3k/8k/16k?
-
si credo di si...
del resto per alcuen cartridge avevo la versioen ricolocata , con tanto di linea basic tipo
10 SYS xxxx
pero' il problema, ricordo che per alcune , soprattutto quelle commodore il procedimento era abbastanza preciso , per molte altre no...poiche cambiavano indirizzi sempre...
Per quelle a doppio blocco, ad esempio dinkey gong (6000 + A000) ricordo avevo una versione con 1 file di caricamento (che posseggo ancora)..il quale aveva una rotine in LM (DATA)...che caricava il primo blocco...e al termine caricava il secondo...e alla fine partiva il gioco.
DIMOSTRAZIONE che con i ricollocamenti dei blocchi, e puntatori indirizzi si puo fare.
in ogni caso bisogna sempre sapere che memoria installare prima di caricare il gioco...
se 8K o 16K o 3K
-
Se ti andasse di fare qualche esperimento il mio fine ultimo sarebbe di convertire i file cartuccia in prg , salvarli in super turbo e caricarli con un sistema audio dal file .tap al vic20 8/16k reale.Per tutta la seconda parte sarei già pronto a farlo (e condividerlo) è solo la prima che mi manca e non so fare , cioè la conversione delle cartucce :P
è un po ambizioso e impegnativo , spero non sia anche impossibile , e poi insomma ogni tanto qualche smanettamento extra si può fare no?
Magari se trovi il metodo con uno e mi spieghi i passaggi da fare lo si fa in due.
Forse col tools giusto per windows potrei riuscirci anche io.
-
ovviamente se possibile mi piacerebbe se mi passassi i tuoi file già pronti...
-
ci vuole tempo purtroppo...quello che mi manca...un gionro ha troppe poche ore...e quelle che ti restano SE LE MANGIA LA MOGLIE senza alcuna attenuante...
prova a dar un occhiata qua...
http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?t=446#p3598
esempio di come rendere OMEGA RACE, un file PRG con linea SYS...
si tratta di una cartridge e quindi game da usarsi con espansione 8k
Il problema che non tutte le cartridge anche da 8k sono programmate in maniera uguale come indirizzi e blocchi...
pero puoi fare degli esperimenti seguendo questo topic.