Sistema MK3000

In altra parte del sito in cui ho trattato le ricerche effettuate sulla storia italiana della scheda Ferguson Bigboard I, avevo riportato alcune informazioni relative al sistema MK3000 prodotto in Italia a partire dal 1983 dalla ADE Elettronica di Palazzolo Milanese (Milano). Nel dicembre 2012 sono riuscito ad entrare in possesso di questo sistema. E’ composto da una board MK83 con processore Z80A, due Z80A PIO (per doppia porta printer, mapping i/o e porta tastiera, uno Z80A SIO/0 per due canali RS232, uno Z80A CTC per timer di sistema ed un FDC 1797 per gestione FM/MFM di drives.  La scheda dispone di doppio connettore IDC a 50 pin per drive 8″ e IDC a 34 pin drive 5.25″. I drives presenti sono:
– Floppy disk 5.25″ BASF AG 6106 (180 Kb, SS/DD)
– Floppy disk 5.25″ Shugart SA465 (720 KB DS/DD)
Purtroppo l’hardware non era completato con il rispettivo software CP/M, anche se le condizioni visive dell’hardware sono davvero eccellenti.

DSCN0020

L’Ing. Luciano Fortunati che all’epoca (1983) lavorava al C.N.R. di Pisa risolse con impegno un annoso problema di data entry sul mainframe IBM 370 all’epoca in uso al C.N.U.C.E. di Pisa.  Se prima era necessario perforare delle schede e poi farle leggere ad una macchina per lanciare i propri programmi, adesso era sufficiente portarli in dischetti da 5,25″ in un qualsiasi formato disco leggibile attraverso il sistema operativo CP/M. Infatti aveva acquistato una scheda configurata in modo da leggere sia in modalità SSSD che in modalità DSDD e qualsiasi formato di byte/settore e settori/traccia in grado di trasferire attraverso protocollo BSC il programma da fare girare sul mainframe.  Di seguito una pagina di descrizione del sistema estratta dal manuale di cui sono riuscito ad entrare in possesso dal sito C.N.R. – I.S.T.I. di Pisa:

MK3000

Quanto esposto sembra oggi essere una banalità, ma ricordo che nel 1983 questa semplice operazione comportava enormi perdite di tempo contrariamente a quanto avviene oggi in cui questo può essere fatto sia in locale sui propri sistemi che eventualmente con un qualsiasi smartphone o tablet in cloud.

Purtroppo il sistema non era completo del disco di avvio del proprio sistema operativo CP/M e delle relative utilità, pertanto dopo aver connesso alla scheda una tastiera PS2 mediante interfaccia PS2-Parallela, aver collegato un monitor TV con ingresso composito PAL analogico, fornito alimentazione con un alimentatore ATX ho provveduto ad accendere la scheda riuscendo ad ottenere il clear screen iniziale, il messaggio “System Monitor 4.2” ed il prompt “m>”. Erano operativi anche molti altri comandi del firmware come il dump della memoria, ecc. Ho quindi effettuato alcuni ulteriori test per verificare come riuscire a metterla in condizioni di caricare un sistema operativo CP/M.

Non ero però certo che collegando direttamente dei drive da 3,5″ direttamente al connettore IDC da 34 pin della scheda MK83, questi potessero funzionare correttamente. Come minimo ci sarebbe stato da modificare il normale setting DS1 in DS0, ma le mie esperienze mi dicono che il connettore di un drive da 3,5″ non è immediatamente compatibile con il connettore di un drive da 5,25″. Per evitare di dedicarmi a risolvere questo problema, ho preferito saltarlo provvedendo a disconnettere un adattatore per drive che avevo autocostruito nel gennaio 2012 e che è perfettamente funzionante con la mia MK82 il cui schema è il seguente:

drivebus

In esso il connettore IDC a 50 pin è direttamente connesso al connettore IDC a 50 pin presente sulla board MK82, mentre i connettori A, B e C sono normali IDC a 34 pin sui quali è possibile inserire un classico flat cable per drive da 3,5″ o 5,25″. Al connettore D è possibile collegare un flat cable per connettere un drive esterno da 8″.   La principale motivazione per realizzare una connessione di questo tipo è insita nel fatto che i drive da 3,5″ non sono direttamente interfacciabili sull’IDC della MK82 per la gestione del Ready signal e perchè ciascun drive si attende il Drive Select Signal sul proprio pin 12 mentre dalla MK83 i sngoli segnali sono attestati su differenti pin del connettore IDC da 50 pin (A=26; B=28; C=30 e D=32).

Con queste premesse mi sono dedicato a cercare di capire come caricare un sistema operativo CP/M.

C’è da dire che il contenuto della Eprom (2716) della MK83, come per la scheda Ferguson Bigboard 1 (=MK82), viene, al momento della accensione, ricopiato automaticamente in DRAM ma, mentre nella Ferguson Bigboard 1 (o MK82) viene posizionato all’indirizzo F000H, nella MK83 viene posizionato all’indirizzo F800H. Pertanto non è possibile far caricare alla scheda MK83 il medesimo sistema operativo CP/M della MK82.

 Mi sono però ricordato che, circa un anno prima, avevo avuto modo di essere contattato da una persona di Modena che disponeva di una identica scheda MK83 utilizzata per gestire la sua macchina per maglieria. Osservando le foto che mi aveva inviato ho notato la medesima configurazione hardware della parte FDC con quella presente nella mia MK83 composta da un FDC WD1797 e da un separatore dati esterno FDC9229BT.

 Ho quindi provveduto a:

1) installare la eprom (2716) con il BIOS della mia MK82 nella mia MK83: la mia MK83 ha effettuato correttamente il BOOT del sistema operativo CP/M della scheda MK82.

2) programmare, su una nuova eprom 2716, il contenuto del firmware della MK83 fornitomi a suo tempo dalla persona di Modena, per installarlo sulla mia MK83 e tentare di effettuare il caricamento del SUO CP/M: questo ha consentito di mettere a punto sulla mia MK83 del sistema operativo CP/M per MK83.

In attesa di poter recuperare una coppia di drive 5,25″ funzionanti con le medesime caratteristiche per il sistema MK3000 e chissà, forse anche il suo sistema operativo CP/M originale, provvederò a interfacciare correttamente una coppia di drive da 3,5″ con firmware MK83 e sistema operativo CP/M MK83.

Ho la mia scheda MK82 con z80 a 2,5MHz e FDC 1771. Carica il bios a F000H e fa il boot del CP/M da floppy disk formato 8” SSSD 26 settori da 128byte x traccia 77 tracce single side single density.

Ho preso una scheda MK83 con Z80 B e FDC 1797. Carica il suo Bios a F800H ma non ho floppy di sistema.

Se provo a leggere un dischetto MK82 con il comando r0,0,1 e poi r0,2,1 vedo a video che legge correttamente i settori.

Se prendo il bios della MK82 e lo metto nella MK83 faccio il boot con i dischi della MK82. Se cerco di fare il boot con il bios caricato a f800h non va a buon fine perché il disco di sistema è configurato per “trovare” gli entry point a f000h.

Mi ricordavo che Fabio Marverti di Modena aveva una MK83 (la chiamo MK83F) che caricava il bios a F800H e aveva disco di sistema doppia faccia doppia densità o meglio: prime due tracce doppia faccia contiene il cp/m in formato 26 settori da 128 byte. Le successive 75 sono composte da 8 settori da 1024KB in doppia densità su entrambe le facce. Con questa premessa mi sono fatto mandare la scheda.

Se programmo le rispettive eprom con i rispettivi bios e li scambio nessuna delle board mi da il prompt di sistema. Però continuano a caricare i rispettivi bios a f800h.

Sulla mia mk83 posso leggere settore per settore manualmente un dischetto sssd di 26 settori da 128byte.

Se provo a leggere il dischetto di sistema della mk83 di fabio marverti posso leggere i settori di sisetma che sono ancora in sssd sia lato side0 che lato side 1, ma se cerco di leggere dalla traccia 2 in poi (in cui i settori sono 8x1024byte in DD) non li legge.

Avevo infine pensato che se la mia MK83 riesce a leggere un dischetto se è in SD potevo copiare con sysgen il cp/m di fabio (cioè le prime 2 tracce del disco) su un dischetto in singola faccia SSSD, ma in questo modo mi manca però la parte del sistema operativo registrato lato side 2 sul disco di fabio.

Non ho la piu’ pallida idea di come generare un nuovo disco CP/M.

Infine: sono riuscito a copiare sysgen ed init sul disco di sistema di fabio, essendo questi generati per un disco della mk82 SSSD, non funzionano.

 

Riepilogo:

La scheda ha un clock di 4MHz e Chip della serie Z80B, una memoria di 32×4116 chip (=64kbyte), un BIOS contenuto in 2 eprom 2716 da 200nS, e un FDC 1797 con separatore dati esterno FDC9229BT. Il bios viene caricato in RAM all’indirizzo F800H e non dispongo dei relativi dischi di sistema operativo CP/M. Inserendo la eprom della mia MK82 al posto del suo bios (questo viene caricato in RAM all’idirizzo F000H), la scheda effettua correttamente il Boot dai dischi della MK82 (SSSD 26sect x 77 tracce singola faccia singola densità).

Fabio Marverti di Modena da me contattato perchè disponeva di una scheda molto simile, mi ha inviato la sua scheda che ha un clock di 4MHz e Chip della serie Z80B, una memoria di 8×4164 chip (=64kbyte), un BIOS contenuto in 1 eprom 2732 da 200nS, e un FDC 1797 con separatore dati esterno FDC9229BT. Il bios viene caricato in RAM all’indirizzo F800H e dispongo dei relativi dischi di sistema operativo CP/M ( DSDD 8 sect x 75 tracce doppia faccia doppia densita 1,2MByte).

L’idea era: se le schede “si assomigliano” potrei copiare il BIOS di Fabio nella mia per poter utilizzare i suoi dischi di ssitema e avere una macchina completa di sistema operativo?

 

Lascia un commento

Search

Categories

Archivi