> Urka, mi dispiace, non volevo farti fare confusione... > Per carità, mea culpa che non ho sufficienti cognizioni! > L'essenziale per salvare SU DISCO: > > 1. il BIOS del GDOS (la ROM): SAVE d1"BIOS" CODE 8192,8192 > 2. il GDOS (la RAM): SAVE d1"BIOS" CODE 0,6656 > 3. il BIOS dell'Uni-DOS (la ROM): SAVE d1"BIOS" CODE 0,8192 > 4. l'Uni-DOS (la RAM): SAVE d1"BIOS" CODE 8192,6656 > Non ho mai usato l'Uni-DOS (a proposito, dovrei? E' migliore anche delle ultime versioni del GDOS?). Quindi una delle (immagino varie) differenze tra Uni-DOS e GDOS è il fatto che ROM e RAM sono swappate? Se sì, perché swapparle (o non swapparle)? > > Salvare SU NASTRO, invece, è leggermente più complicato in quanto hai > bisogno di una piccola routine in assembly che si occupa di copiare nella > RAM dello Spectrum il contenuto della memoria della DISCiPLE. Una bozza "al > volo" può essere questa: > > 10 CLEAR 29999: FOR f=30000 TO 32017: READ a: POKE f, a: NEXT f > 20 DATA 243,219,187,33,0,0,17,0,128,1,0,64,237,176,211,187,251,201 > 30 RANDOMIZE USR 30000 > > Una volta eseguite queste 3 linee di BASIC avrai a disposizione il > contenuto dell'intera memoria della DISCiPLE all'indirizzo 32768; per > sapere dove stanno ROM e RAM usa il seguente schema: > > - se GDOS NON ERA caricato prima di eseguire il BASIC, la ROM è a 32768 e > la RAM (verosimilmente vuota o contenente spazzatura) è a 40960 > - se GDOS ERA caricato prima di eseguire il BASIC, la RAM è a 32768 e la > ROM è a 40960 > - se GDOS ERA caricato ma hai eseguito un doppio reset dello Spectrum > senza eseguire comandi GDOS prima di eseguire il BASIC, la ROM è a 32768 e > la RAM è a 40960 > - se usi Uni-DOS, la ROM è sempre a 32768 e la RAM sempre a 40960 (almeno > da BASIC). > > Se hai bisogno di altri dettagli o se qualcosa non è chiaro fammi un > fischio :) > Grazie, infatti ti chiedo quanto sotto: :-) Quindi (non conosco il L/M, purtroppo) la tua routine copia sempre prima la ROM (da 32768 a 40959) e poi la RAM subito dopo, contigua (da 40960 a 47615)? Anche nel caso dell'Uni-DOS? (come fa a capire che viene eseguita su un sistema con Uni-DOS?) Altro dubbio: se la ROM viene copiata a partire da 32768, non dovrebbe terminare a 40960? (32768+8192) Grazie! :-) Max