Ciao Giorgio
Innanzitutto grazie anche a te per l'interesse dimostrato,fa veramente piacere.
Semplificare il più possibile le problematiche del software: ad uno stadio iniziale limitarsi al solo formato TAP (non escludendo lo sviluppo di formati diversi in futuro)
Sì,infatti questa è stata una cosa che mi sono imposto fin dall'inizio (vedi primi post di questo thread).Solo quando la parte TAP sarà completa si potrà parlare di altri formati.
Ad ogni modo,un formato interessante sarebbe l'equivalente dei TAP per dispositivi mobili;con lo stesso potere informativo dei TAP,ma meno ingombranti e più idonei alla minore potenza della macchina.
Avevo preso in considerazione fin dalle prime battute anche l'idea del (dis)assemblatore.
Più precisamente,l'idea dell'assemblatore non nasce con l'intenzione di cambiare radicalmente il codice dei programmi;come detto da iAN CooG,a quel punto conviene fare una crack sul programma stesso,perchè lavorare sul TAP sarebbe decisamente scomodo.
L'idea è invece quella di dare la possibilità di "aggiustare" a mano quei piccoli
pezzi di codice dumpati male (nell'intestazione o nelle routine di caricamento successive).
Passiamo ai plug-in.Sono una buona idea,stracollaudata:proprio per questo
secondo me riscriverli tutti significa spendere un mucchio di tempo senza introdurre nessuna novità;tanto più che il TM è stato concepito come una funzionalità aggiuntiva del WAV-PRG,per cui riscrivere dei plug-in già esistenti sarebbe anche piuttosto "stupido"
- Per la lettura processo inverso: dall'Header vengono ricavate informazioni sul turbo utilizzato. Si fanno delle DLL da usare come plug-ins, come già avviene sull'Audiotap e il WAV-PRG.
Un programma capace di autoaggiornarsi in base alle esigenze sarebbe interessantissimo,il problema è che dall'header potresti capire solamente se il
programma da caricare è decodificabile con le routine della ROM oppure no.
Anche esaminando il codice del loader,è tutt'altro che semplice estrarre i vari
parametri necessari alla costruzione del plugin:come forse avrai già visto,i loader hanno una struttura molto variabile,non esiste un criterio preciso per dire "ok, questo è il byte di sincronizzazione,questo è l'indirizzo di partenza",ecc...
Senza contare che il loader stesso potrebbe essere stato salvato su più blocchi...
Comunque queste sono solo
mie considerazioni,che non vogliono (e non devono) mettere preconcetti sulla possibilità di realizzare qualcosa di interessante.
Chi fose interessato continui a proporre idee
(meglio se corredate da due linee di codice o da un algoritmo,almeno per dare un'idea di quel che si intende).
(Colgo l'occasione per dire che al primo link della homepage del progetto è disponibile la prima parte del "readme" di cui avevo parlato qualche post addietro).