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

26. April 2024, 19:25:30

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,715
  • Total Topics: 1,340
  • Online today: 280
  • Online ever: 1,724
  • (16. January 2020, 00:18:45)
Users Online
Users: 4
Guests: 145
Total: 149

145 Guests, 4 Users
scorp73, cpcman, Rennert, GarfieldTheFirst

LambdaSpeak CPC Sprach-Synthesizer, Sample Player, RTC, MP3, UART Erweiterung

Started by LambdaMikel, 01. May 2017, 09:41:34

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

TFM

Ok, dann werden die Daten zu schnell übertragen... ein guter Ansatz zum debugging.

Nur... @LambdaMikel... wo soll ich hier ansetzen?
Bisher geht das so:


!EEUP - Funktionsweise:

- Wert &F9 an Port &FBEE schicken

- Warten bis LS3 Port &FBEE = &20 oder &80

- Start Page Nummer (0-255) an Port &FBEE schicken

- Warten bis LS3 Port &FBEE = &20 oder &80

- Anzahl Pages (1-256) an Port &FBEE schicken

- Kombiniertes Warten: Zuerst etwa 40 us warten, dann auf LS3 Port = &FF warten, dann 2,8 ms warten

X Daten-Wert aus RAM lesen und an LS3 Port senden

- Wenn noch nicht alle Daten transferiert sind, dann nach X springen (siehe oben)

- Wenn Fertig, dann:
- Warten bis LS3 Port &FBEE = &20 oder &80
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)

TFM

Liebe LS3 Benutzer!

Bitte mal folgendes ausprobieren:

- Rechner und LS3 sind ausgeschalten (bzw. für 10 Sekunden ausgeschalten)

- CPC einschalten

- Befehl: OUT &FBEE,&DF eingeben

Fragen: Hängt er sich auf. Wenn nein, bitte 5 mal testen. Denn bei mir hängt es fast immer. Da ist ein Problem in der Firmware, warscheinlich setzt der LS3 den WAIT dauerhaft aktiv.

Bitte auch am KCc testen, ist der toleranter?
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)

Rennert

@tfm:

Ja der KCC hängt auch, nach LS3 Reset kommt dann der Cursor wieder

TFM

Danke, da hilft nur ein Firmware-Update.  :winke0002:
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)

LambdaMikel

Quote from: TFM on 24. July 2019, 23:52:43
Liebe LS3 Benutzer!

Bitte mal folgendes ausprobieren:

- Rechner und LS3 sind ausgeschalten (bzw. für 10 Sekunden ausgeschalten)

- CPC einschalten

- Befehl: OUT &FBEE,&DF eingeben

Fragen: Hängt er sich auf. Wenn nein, bitte 5 mal testen. Denn bei mir hängt es fast immer. Da ist ein Problem in der Firmware, warscheinlich setzt der LS3 den WAIT dauerhaft aktiv.

Bitte auch am KCc testen, ist der toleranter?

Hi Stefan,

das &DF hat aber nichts mit dem anderen Problem hier zu tun, oder? EEPROM-Bezug? Oder unabhaengig?


TFM

Stimmt, davon unabhängig. Es gibt noch ein paar Baustellen.

Hier eine weitere:

Bitte mal folgendes eintippen:
- CPC einschalten
!LAMBDA
!SP,"Hello this is a test":OUT &FBEE,&DE

Nun wird der Satz doppelt gesprochen. Das sollte aber wohl nicht so sein (denn das !SP Kommando sendet schon &0D am Ende).
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)

LambdaMikel

Interessant. Gucke ich mir an, wenn ich wieder zu Hause bin.

Rennert


TFM

Momentan arbeite ich an einem weiterem Problem. FutureOS kann jetzt Meldungen sprechen (z.B. bei Copy, I-Icon, OK-Icon, Space drücken etc), aber anstatt dass er spricht und sofort zurück kehrt, ist es so, dass er zu Ende spricht und erst dann den CPC weiterlaufen lässt.

Hier mal ein Beispiel, falls es interessieren sollte... siehe Anhang.

Klar, die Non-Blocking Sachen sind alle eingeschalten, trotzdem wartet der LS. Aber: Ich kann es mit BASIC nicht ganz so leicht rekonstruieren. Also guck ich hier auch mal was los ist.

EDIT: Es scheint so, daß die Abfrage des LS3 Status Port &FBEE dazu führt, daß auf Blocking umgeschalten wird. Habe zur Verdeutlichung mal die DSK "TEST-LS3" angehängt.
Die Sources TEST1 und TEST2 unterscheiden sich nur in Zeile 62! Bitte anschauen! Und bitte Firmware reparieren.  :)
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)

LambdaMikel

Hi Stefan,
bin wieder da... test1 und test2 sehe ich, aber load gibt mir "direct command found".
Was fuer Datein sind denn das? MAXAM?

TFM

Genau, Source für Maxam. Bitte alle meine Posts lesen, das mit dem "Einfrieren" bei !STOP gibt mir am meisten 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)

LambdaMikel

Hi TFM, |stop command sollte repariert sein. Anbei. Bitte testen.

LS3-TEST habe ich noch nicht angeschaut - one bug at a time. Vielleicht hat es sich ja in Wohlgefallen aufgelöst?

EDIT: OK, habe ich getestet. Prinzipiell ist es so, da LS3 keine Threads hat, dass solange LS3 spricht, keine anderen Kommandos abgearbeitet werden können, mit einer Ausnahme: STOP funktioniert. Reine Status-Abfragen sollten allerdings funktionieren. Der non-blocking mode ist also nur dazu da, dem CPC eine Gelegenheit gegeben wird, STOP zu senden (sonst würde er ja angehalten werden bis zu Ende gesprochen).

Nun, WALP macht mehr als nur lesen... sobald &80 gelesen wird, versucht er ein Kommando zu senden - nämlich Umschalten auf den EPSON Modus mittels &EF. Genau da blockiert er m.E. dann, solange er noch spricht. Anderseits zeigt &80 ja bereits an, dass er wieder bereit ist, Kommandos anzunehmen... hmm. Ich muss mal nachschauen, ob LS3 evtl. &80 ZU FRÜH sendet. Anscheinend zeigt er bereits &80 an, ist aber noch am Sprechen. Das sollten wir verhindern, um genau diesen Effekt zu vermeiden. Muss ich genauer anschauen.

Kommt &80 denn eigentlich SOFORT, auch wenn er noch spricht, im Non-Blocking Mode? Genau das wäre dann das Problem. Muss ich testen. Anderseits, vielleicht benötigt er eine etwas längere Zeitverzögerung zwischen &80 erscheint auf dem Bus, und nächstes Kommand kann gesendet werden.  Ist es denn wirklich so, dass der CPC an dieser Stelle ANGEHALTEN wird?

TFM

Lass uns mal nur vom Epson Modus reden (vergiss alles mit &80, im SSA1 Modus ist das eh anders).

Ja, er sollte das sprechen starten und dann sofort &20 melden und die Kontrolle an den CPC geben, spricht also den CPC nicht auf WAIT setzen, dazu ist ja der non-blocking modus schließlich da.  :)

Werde die neue Firmware jetzt mal testen...
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)

LambdaMikel

Quote from: TFM on 31. July 2019, 18:30:16
Lass uns mal nur vom Epson Modus reden (vergiss alles mit &80, im SSA1 Modus ist das eh anders).

Ja, er sollte das sprechen starten und dann sofort &20 melden und die Kontrolle an den CPC geben, spricht also den CPC nicht auf WAIT setzen, dazu ist ja der non-blocking modus schließlich da.  :)

Werde die neue Firmware jetzt mal testen...

Gut, und ich habe inzwischen gesehen, dass READY im EPSON modus sofort angezeigt wird im Non-Blocking mode. Auch wenn er noch spricht. Das ist natuerlich ein Problem. Wird behoben in der naechsten Firmware.

Wie gesagt, neuer Firmware behebt nur das STOP Problem.

TFM

Quote from: LambdaMikel on 31. July 2019, 18:39:15
Gut, und ich habe inzwischen gesehen, dass READY im EPSON modus sofort angezeigt wird. Auch wenn er noch spricht. Das ist natuerlich ein Problem. Wird behoben in der naechsten Firmware.
NEIN! Wir verstehen uns da falsch! Es ist ja RICHTIG, dass er &20 anzeigt, denn er darf ja ruhig sprechen und den CPC weiter machen lassen. Wir reden ja vom NON-blocking Modus. Oder hab ich den Faden verloren... ich guck's mir noch mal an.

Quote from: LambdaMikel on 31. July 2019, 18:39:15
Wie gesagt, neuer Firmware behebt nur das STOP Problem.

Problem behoben! Alles bestens! Danke!


Beispiel: Starte FutureOS (siehe Anhang) und drucke I oder O. Während er spricht kann man den Pfeil bewegen und er zeigt die Uhrzeit an. So soll es ja sein.
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)