Welcome to Schneider / Amstrad CPC Forum. Please login or sign up.

29. April 2024, 22:59:47

Login with username, password and session length

Shoutbox

TFM

2024-04-08, 20:42:44
Happy Sonnenfinsternis!  :)

TFM

2024-01-15, 17:06:57
Momentan billige Farbbänder auf Ebay für PCW

Devilmarkus

2023-07-09, 10:37:40
Zweiter 👋😂🤣

TFM

2023-06-13, 14:21:49
Sommerloch!

TFM

2023-05-30, 17:00:20
Erster ;-)

Recent

Members
  • Total Members: 221
  • Latest: scorp73
Stats
  • Total Posts: 11,725
  • Total Topics: 1,341
  • Online today: 249
  • Online ever: 1,724
  • (16. January 2020, 00:18:45)
Users Online
Users: 1
Guests: 159
Total: 160

159 Guests, 1 User
TFM

Morse-Decoder für KW Empfänger am CPC

Started by Vandalsk, 04. June 2014, 23:21:32

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Vandalsk

Ich hab gestern in einer alten Happy Computer einen -für mich- interessanten Artikel über einen Kurzwellen Decodierer gelesen. Der Artikel und die Bauanleitung bezog sich zwar auf den C 64, soll aber nach Angeben des Autors auf jeden anderen Homecomputer mit 9 pol. Joystickanschluss möglich sein. Die Schaltung der Platine ist auch recht einfach.
Das Listing ist bis auf einen Peek Befehl super auf den CPC umzusetzen. Ich hab gestern natürlich spontan mein Röhrenradio angeheizt (ein 5 € Weltempfänger hätte es sicher auch getan, aber man hat ja Stil  :) ) und tatsächlich werden diese Signale wohl noch genutzt.



Hat sowas schon mal jemand für den CPC umgesetzt?

(Wenn interesse besteht, scanne ich die Seiten gerne bei Gelegenheit ein.)

Rennert

Bitte scanne mal ein, würde das bei Gelegenheit mal am KC Compact probieren :flehan:

Devilmarkus

Ja, scanne mal... Ich finds auch äusserst Interessant...

LG
Markus
https://cpcwiki.de
Dein Deutsches CPCWiki!

Vandalsk

Ok, ich scann das mal ein. Vielleicht könnte man das Listing und die Schaltung ja sogar noch verbessern.

Vandalsk

Sorry, hat etwas gedauert. Mein Scanner hat Probleme gemacht.
Aber hier, wie versprochen, der Bericht aus der Happy Computer.

Vielleicht kann mir bei dem Peek Befehl noch jemand einen Tip geben, was der im Listing bewirkt. Ich kenne mich mit dem C 64 nicht so gut aus.

Rennert

ich habe zwar einen C64 aber softwaretechnisch auch keinen großen Plan davon.
kann maximal im großen C64 Buch nachschlagen, was der Peek Befehl überhaupt macht.

Vandalsk

Das wäre klasse, wenn Du mal in dem Buch nachschlagen könntest. Aber es eilt nicht, lass Dir Zeit. Soweit ich mich erinnere, wurden Peek Befehle am C64 auch gerne für Farbcodes genutzt. Aber garantiert auch noch für 100 000 andere Sachen.
Ich hab auch noch einen geschenkten C64 eingemottet, aber ich habe da nie dran gearbeitet.
Bis auf Load"*",8,1 kenn ich das Gerät überhaupt nicht. Weder Hard- noch Softwaretechnisch.

Devilmarkus

Ich hab mir die Schaltung noch nicht gebaut (Werd ich wohl auch leider nicht können...)

Was den Peek anbelangt: Ich vermute, es wird der Joystick abgefragt in irgendeiner Weise.

Ist also ein spezielles Signal vorhanden, wird A$ auf " " gesetzt, statt normal auf "" (Ein Leerzeichen wird eingefügt)
https://cpcwiki.de
Dein Deutsches CPCWiki!

Vandalsk

Ichhabmir das Listing gerade noch mal angeguckt......gibt absolut Sinn mit dem Peek und dem Leerzeichen.  :smiley027:

Devilmarkus

Könnte man (Falls es eine Joystickrichtung oder - Feuertaste ist) mit IF INKEY(xx)=0 THEN A$=" " modifizieren. (INKEY Codes stehen im Handbuch)
https://cpcwiki.de
Dein Deutsches CPCWiki!

Devilmarkus

Hier das komplette CPC-Listing:

10 MODE 1:REM BOB'88
20 P=2:B=2*P:W=4*B:C=1
30 c$=":ETIANMSURWDKGOHVF£L£PJBXCYYQ££54£3£££2££+££££16=/£££££7£££8£90"
40 I=0:N=0
50 GOSUB 300:IF A$="" THEN N=N+1
60 IF N>B THEN 140
70 GOSUB 300:IF A$="" THEN 50
80 GOSUB 300:IF a$<>"" THEN I=I+1
90 IF I=0 THEN 80
100 GOSUB 300:IF A$<>"" THEN 80
110 C=C+C
120 IF I>P THEN C=C+1
130 GOTO 40
140 IF C>63 THEN PRINT"£";:GOTO 160
150 PRINT MID$(C$,C,1);
160 C=1:I=0
170 GOSUB 300:IF A$="" THEN N=N+1
180 IF N>W THEN PRINT " ";:GOTO 80
190 GOSUB 300:IF A$<>"" THEN 80
200 GOTO 170
300 a$="":IF INKEY(76)=0 THEN A$=" "
310 RETURN


Bestätigt:

PEEK(56230) am C64 ist der Joy-Port 2. Gibt er 111 aus, ist Feuer gedrückt.

http://www.c64-wiki.de/index.php/Joystick#Programmierung

Hier als DSK:

https://cpcwiki.de
Dein Deutsches CPCWiki!

Devilmarkus

Kennt jemand eine Internetquelle für solch ein Signal? (Dann könnte ich die Hardware emulieren, und somit die Software testen)

Oder kann mir jemand solch ein Signal aufnehmen? (WAV oder MP3)
https://cpcwiki.de
Dein Deutsches CPCWiki!

Devilmarkus

Ups...
Da hatte sich ein Fehler eingeschlichen in Zeile 30...

Korrektur:

10 MODE 1:REM BOB'88
20 P=2:B=2*P:W=4*B:C=1
30 c$=":ETIANMSURWDKGOHVF£L£PJBXCYZQ££54£3£££2££+££££16=/£££££7£££8£90"
40 I=0:N=0
50 GOSUB 300:IF A$="" THEN N=N+1
60 IF N>B THEN 140
70 GOSUB 300:IF A$="" THEN 50
80 GOSUB 300:IF a$<>"" THEN I=I+1
90 IF I=0 THEN 80
100 GOSUB 300:IF A$<>"" THEN 80
110 C=C+C
120 IF I>P THEN C=C+1
130 GOTO 40
140 IF C>63 THEN PRINT"£";:GOTO 160
150 PRINT MID$(C$,C,1);
160 C=1:I=0
170 GOSUB 300:IF A$="" THEN N=N+1
180 IF N>W THEN PRINT " ";:GOTO 80
190 GOSUB 300:IF A$<>"" THEN 80
200 GOTO 170
300 a$="":IF INKEY(76)=0 THEN A$=" "
310 RETURN


Korrigierte Disk:

https://cpcwiki.de
Dein Deutsches CPCWiki!

TFM

Ah ja, RTTY, daran kann ich mich erinnern. Und da sendet echt noch eine Station! Ist ja faszinierend.

Wie geht das eigentlich? Ist es so eine Art A/D Wandler mit Antenne? Wäre ja mal interessant in die Richtung weiter zu denken.
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 20.12.2023)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 26.12.2021)

Vandalsk

Zu meiner Bundeswehrzeit war RTTY, also quasi das Funkschreibverfahren, noch aktuell. Ob das heute noch praktiziert wird weiß ich nicht. Aber ich glaube, es gibt noch so einige Sender die in Gebrauch sind.
Ich bin leider nicht so der Hardwarespezialist und bis auf ein bißchen CB Funk kenn ich mich mit der Materie nicht mehr sonderlich gut aus. Aber ich denke auch, dass es ein Analog/Digital Wandler sein müßte.