Il 01/03/2015 13:07, Stefano Bodrato ha scritto:
57600. E ricordo che con il 128k si può arrivare anche a 115200.Se lavora nelle 2 direzioni mi interessa.. sorgenti prego. :P
Certo che lavora nelle due direzioni! Trasmettere è facile. E' ricevere che è difficile. :-) Chiaramente devono risiedere nella zona non contesa e le interruzioni devono essere disabilitate. Ecco i sorgenti:
TXD: trasmette il carattere contenuto in A RXD: riceve un carattere e lo mette in A TXD LD D,A LD A,246 LD BC,49149 OUT (C),A LD E,8 LD A,D LD D,0 NOP NOP NOP RLCA RLCA RLCA RLCA SND RRCA LD B,191 OUT (C),A LD D,0 LD D,0 NOP NOP DEC E JR NZ,SND LD A,254 LD B,191 OUT (C),A RET RXD LD A,255 IN A,(253) RLA JR C,RXD DEC DE DEC DE DEC DE DEC DE DEC DE LD A,0 NOP LD E,7 RCV LD A,255 IN A,(253) RLA RR D LD A,0 NOP NOP DEC E JR NZ,RCV LD A,255 IN A,(253) RLA RR D LD A,D RET
Onestamente ci ho pensato.. mi hai già passato i sorgenti nella versione vecchia tempo fa, ma non ero riuscito a trovare la quadra e incastrarli come funzionalità extra in z88dk.
Infatti non è facile. E comunque è meglio che prima vengano testate per bene.
Aggiungerli come opzione ‘nativa’ è molto impegnativo (andrebbero estese a qualche altra funzione e si dovrebbero modificare i 2 compilatori sdcc e sccz80 per gestirle, oltre alla framework che li include). Forse si potrebbe inventare qualche magheggio su funzione esterna..
Casino... EMG -- EMAG Software Homepage: http://www.emagsoftware.it The EMG Music page: http://www.emagsoftware.it/emgmusic The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum The Best of Spectrum Games: http://www.emagsoftware.it/tbosg