8-Bit-Nirvana Startseite  
?IDIOT IN FRONT OF COMPUTER ERROR IN 32040
[ Home | Index | Werbung | Forum | Flohmarkt | Gästebuch | Links | Info ]

8-Bit-Forum

"Re: Alphatronic PC + CP/M" von Solarisfan
(15.8.2010, 23:56)

(Dieser Artikel wurde 2303 mal aufgerufen)

Bezugsnachricht: Alphatronic PC + CP/M (Solarisfan)

[ Antwort schreiben | Übersicht | Thema ]

Problem gelöst - Keine Diskette mehr nötig !

Vorgehensweise:

2. Zielrechner Terminalprogram starten mit Parameters

* Baudrate (abhängig von Steckbrücke beim alphatronic) - auf 2400 baud
* 8 Datenbits
* 1 Stopbit
* Keine Parität
* DTR/DSR Hardware Handshake

verbunden mit Nullmodem Kabel DB25 (alphatronic) - DB9 (Zielrechner)

2. COM datei mit PCTRANS.COM von alphatronic an den Zielrechner versuchen zu senden

3. Erster Datensatz (Header) enthält den Dateinamen der übertragenen Datei - Z.B. A:PIP.COM

4. Verbindung trennen und wieder verbinden - zweiter Datensatz wird angezeigt

5. Solange 4. wiederholen, bis alle Blöcke gemäß PCTRANS übertragen wurden

6. Terminalfenster enthält NICHT die binärdaten - nur "Schrott" - zeigt aber die Wirkungsweise von PCTRANS

* Hardwarehandshake (durch probieren rausegefunden)
* Verbindung trennen /wiederverbinden lösten senden des nächsten Datensatzes aus.

--> Kein X,Y oder ZModem
--> Keine "normale" Flusskontrolle - eher Methode Holzhammer.




7. Erstellen einer kleinen Applikation die serielle Daten im Binärformat empfangen kann - RXTX geht da für JAVA

8. Applikation starten

9. PCTRANS.COM starten

10. Datei übertragen - Header wird gesendet

11. "HEADER" besteht aus

Byte 0: Länge des Headers
Byte 1: 0
Byte 2: Hibyte (Länge der Datei in 128 byte Blöcken)
Byte 3: Lobyte (Länge der Datei in 128 byte Blöcken)
Byte 4: 0
Byte 5 bis (Byte 5 + Dateinamenlänge (max. 12 byte)) = bis max. Byte 16


Bespiel:

Datei: A:LOAD.COM
Dateiname = LOAD.COM
Dateinamenlänge = 8
Dateilänge = 1792
Datenblöcke = Ganzzahldivision von Dateilänge / 128 - ggf. + 1 wenn Dateilänge modulo 128 != 0 --> = 1792 / 128 = 14 = &H0E
Headerlänge = 13 = &H0D

HEADER als HEX


0D 00 00 0E 00 4C 4F 41 44 2E 43 4F 4D

12. verbindung trennen , 300ms warten, Verbindung öffnen, 300ms warten, neuen Datensatz lesen

13. Nutzdaten werden übertragen - "BLOCK"

BLOCK besteht aus

Byte 0: Länge der Nutzdaten (X)
Byte 1 - X: X Byte Nutzdaten

14. Wiederholen, bis Anzahl der Datenblöcke identisch mit der Anzahl aus dem Header laut. Punkt 11.

15. 300ms warten, Verbindung trennen - FERTIG !





16. Dateiübertragung auf den Alphatronic

18. auf Alphatronic PCTRANS.COM starten - Modus "Receiver", Filename durch "ENTER" überspringen

19. In Applikation Header berechnen aus Dateinamen und Dateilänge der zu übertragenen Datei berechnen - Dateinamen in GROSSBUCHSTABEN ! Falls Dateilänge Modulo 128 != 0, dann bei Anzahl der Blöcke (Ganzzahldivision Dateilänge / 128) ein zusätzlichen Block addieren.

20. Verbindung öffnen, 300ms warten, Header senden, 300ms warten, verbindung trennen, 300ms warten

21. Datenblock generieren - Byte-Array mit 129 Feldern (0 - 128) und mit 0 in jedem Feld initialisieren

22. 128 Byte aus der zu übertragenden Datei lesen und in die Bytes 1 - 128 schieben

23. Blocklänge berechnen und Länge in Byte 0 des Blocks schieben

24. Verbindung öffnen, 300ms warten, Block senden, 300ms warten, Verbindung trennen, 300ms warten

25. Solange nach Punkt 21. springen wie Anzahl der berechneten Datenblöcke

26. Nach letztem Datenblock beended PCTRANS den Empfang automatisch un es wird gefragt, ob eine weitere Datei empfangen werdne soll - wenn ja, zurück zu Schritt 19 - ansonsten ENDE


















Lesezeichen für diesen Beitrag: del.icio.us del.icio.us Bei Mister Wong speichern Mister Wong Seite bei LinkARENA speichern LinkARENA Digg it Digg Slashdot it Slashdot StumbleUpon StumbleUpon


Antwort schreiben

Hier kannst Du auf die angezeigte Nachricht antworten. Beachte bitte die folgenden Punkte:
  • Dieses Forum befasst sich ausschließlich mit 8-Bit-Computern und Videospielen, Artikel zu anderen Themen sind off-topic und unerwünscht (für Computer mit mehr als 8 Bit gibt es hier aber auch ein eigenes Forum). Wenn der Vorschreiber schon vom Thema abweicht und Du unbedingt antworten möchtest, dann schreibe ihm lieber per e-mail.
  • Schreibe bitte so, dass sich niemand beleidigt oder angegriffen fühlt, auch wenn der Vorschreiber sich bereits im Ton vergriffen haben sollte. Solche Sachen löst man eh besser privat per e-mail.
  • Im Eingabefeld wird der komplette Text zitiert. Kürze die Zitate bitte so weit wie möglich, damit unnötiger Ballast vermieden wird. Hinweise zu richtigem und falschem Quoting findest Du hier: learn.to/quote.
Name:
E-mail:
Betreff:
Antwort:
Klicke bitte das Feld links an, falls Du Antworten auf diese Nachricht auch per E-mail bekommen möchtest.


       

Achtung: "SPAMFALLE" heißt nicht ohne Grund so, keinesfalls benutzen!



Mozilla Sidebar Opera Sidebar RSS 0.91 Newsfeed RSS 2.0 Newsfeed Add to Google Add to MyYahoo Spam Poison
Mozilla Sidebar Opera Sidebar RSS 0.91 Feed RSS 2.0 Feed Add to Google My Yahoo! Spam Poison

[ Index | Werbung | Forum | Flohmarkt | Gästebuch | Links | Info | Impressum/Datenschutz | News | Credits | Webmasters | Seitenanfang ]