Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Joystick am KC (HC-BASIC) » Themenansicht

Autor Thread - Seiten: -1-
000
25.12.2014, 16:14 Uhr
ralle



Servus...

Hier ein kleines Demo für den Joystick, nur den Randtest bekomme ich leider nicht hin, hier im Listing noch nicht drinne. Beim Drücken der Feuertaste geht es schneller.

0 CLS:Z=0:S=0:GOTO 60
1 S=S-1:RETURN:!LINKS
2 S=S+1:RETURN:!RECHTS
4 Z=Z+1:RETURN:!RUNTER
5 S=S-1:Z=Z+1:RETURN:!LINKS RUNTER
6 S=S+1:Z=Z+1:RETURN:!RECTS RUNTER
8 Z=Z-1:RETURN:!HOCH
9 S=S-1:Z=Z-1:RETURN:!LINKS HOCH
10 S=S+1:Z=Z-1:RETURN:!RECHTS HOCH
16 BEEP:!CLS:PRINTAT(2,2);"FEUER 1":RETURN
17 S=S-2:RETURN:!FEUER 1 LINKS
18 S=S+2:RETURN:!FEUER 1 RECHTS
20 Z=Z+2:RETURN:!FEUER 1 RUNTER
21 S=S-2:Z=Z+2:RETURN:!FEUER 1 LINKS RUNTER
22 S=S-2:Z=Z+2:RETURN:!FEUER 1 RECHTS RUNTER
24 Z=Z-2:RETURN:!FEUER 1 HOCH
25 S=S-2:Z=Z-2:RETURN:!FEUER 1 LINKS HOCH
26 S=S+2:Z=Z-2:RETURN:!FEUER 1 RECHTS HOCH
60 ON JOYST(1) GOSUB 1,2,,4,5,6,,8,9,10,,,,,,16,17,18,,20,21,22,,24,25,26
70 PRINTAT(Z,S);"O":PRINTAT(Z,S);" "
100 GOTO 60

Vorrausgegangen war eigentlich diese Idee aus einem Buch:

10 !ZEICHNER
20 WINDOW 0,23,0,39:PSET0,6:CLS
30 PRINT"DAS BLINKENDE ZEICHEN WIRD MIT"
40 PRINT"DEM JOYSTICK BEWEGT UND MIT"
50 PRINT"DER FEUERTASTE 1 GESETZT"
60 PRINTAT(20,30);"(ENTER)":INPUT"";A$:CLS
70 LETZ=12:LETS=20
80 LETZ$="N"
90 PRINTAT(Z,S);"*"
100 LET FR$=INKEY$
110 IF FR$="N" OR FR$="S" THEN LET Z$=FR$
120 IF FR$="E" THEN LET EN$=FR$
130 IF Z$="N" THEN PRINTAT(Z,S);" "
140 LET Z=Z-(FR$=chr$(10) AND Z<23)+(FR$=chr$(11) AND Z>0)
150 LET S=S-(FR$=chr$(9) AND S<39)+(FR$=chr$(8) AND S>0)
160 IF EN$="E" AND Z$="N" THEN PRINTAT(Z,S)" ":END
170 IFEN$="E" AND Z$="S" THEN END:ELSE GOTO 90

Das ganze geht allerdings mit den Cursortasten, sowie den Buchstaben N für nicht setzen, S für setzen und E für Ende.
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
25.12.2014, 17:52 Uhr
ralle



Habe noch die Zeilen:

61 if Z<0 then Z=0
62 if S<0 then S=0
63 if Z>31 then Z=31
64 if S>39 then S=39

Nur das der Scrollmodus noch aktiv ist, beim BASIC V7 von C128er funktionierte der problemlos, weil offensichtlich dort ein Überschreiten der Bildschirmgrenzen kein Syntax Error herbeiführte. Mir geht es nur drum, die Möglichkeiten des HC-BASIC mal auszuloten. Ist ja noch nur ein O, was frei über den Bildschirm jagt. Das ganze sollte auch auf dem KC87 funktionieren, nur mit geänderten Bildschirmgrenzen. Ich habe es erstmal mit dem textmode versucht...


In der Zeile 16 muß hinter dem Beep noch ein Return eingefügt werden, also

16 beep:return:!Feuertaste
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700

Dieser Beitrag wurde am 26.12.2014 um 14:26 Uhr von ralle editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
07.03.2015, 20:08 Uhr
ralle



So, folgendes habe ich mal unter Basic getestet:

1 printat(10,10);peek(509):goto 1

Also, 8,9,10,11 sind identisch mit den Cursortasten, 32 Aktionstaste 1 (identisch mit der Leertaste) und 13 Aktionstaste 2 (identisch mit der Entertaste).

Ich war eigentlich der Meinung, das die Zelle 509 für die Tastatur vorbehalten ist. Ist schon interessant, das es auch mit dem Spielhebel geht. Somit gehen auch gleich alle BASIC-Spiele, welche als Eingabe die Zelle 509 abfragen, gleich mit dem Spielhebel. Was dafür nicht geht, ist diagonal, also nur Hoch/Runter und Links/Rechts. Ebenso nicht möglich ist Aktionstaste und Bewegungstaste gleichzeitig. Da muß auf dem vorhandenen JOYST(1) zurückgegriffen werden.
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700

Dieser Beitrag wurde am 07.03.2015 um 20:23 Uhr von ralle editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
11.03.2015, 00:29 Uhr
danielk

Avatar von danielk


Zitat:
ralle schrieb
Ich war eigentlich der Meinung, das die Zelle 509 für die Tastatur vorbehalten ist. Ist schon interessant, das es auch mit dem Spielhebel geht. Somit gehen auch gleich alle BASIC-Spiele, welche als Eingabe die Zelle 509 abfragen, gleich mit dem Spielhebel.


Das liegt am Joysticktreiber, der Tastencodes für die Joystick-Aktionen simuliert.

Zitat:
Was dafür nicht geht, ist diagonal, also nur Hoch/Runter und Links/Rechts.


Doch, diagonal geht im Prinzip auch, ist nur standardmäßig deaktiviert. Im Handbuch von CAOS 4.5 steht drin, wie man die Tastencodes dafür einstellt. Allerdings musst Du dann auch erstmal ein Spiel finden, dass separate Tasten für diagonale Bewegungen unterstützt.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
14.03.2015, 10:40 Uhr
ralle



Das ließe sich anpassen, bei PILZE.SSS ist das recht schön zu sehen. Der Joysticktreiber ist im CAOS 4.5 schon vorhanden, das kleine Programm liefert nur die Rohtastencodes, wie diese sonst nur von der Tastatur kommen. Vom prinzip kann man die Cursorsteuerung, als die Interaktion im Spiel mitten in die Tastatur (Buchstabenfeld) legen. Da am Mühlhausener KC nur serielle Tastaturen in Aktion sind, bringt es wenig. Der Joystick wird parallel abgefragt, weshalb mit dem BASIC-Befehl JOY(1) auch noch andere Dinge möglich sind...

Besonders interessant bei der großen Tastatur
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700

Dieser Beitrag wurde am 14.03.2015 um 10:49 Uhr von ralle editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek