Robotrontechnik-Forum

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

Robotrontechnik-Forum » Technische Diskussionen » KC85 Sound über FBAS » Themenansicht

Autor Thread - Seiten: -1-
000
28.02.2023, 21:09 Uhr
utz



Guten Abend,

ich arbeite momentan an einer Musikabspiel-Routine für den KC 85/3. Einfacher interruptgesteuerter Zwei-Kanal-Klang über CTC funktioniert so weit. Ich wollte aber auch mal versuchen, die Lautstärke-Regelung über PIO-Kanal B zu nutzen. Hierbei sind mir allerdings ein paar Dinge unklar.

Dem Systemhandbuch ist zu entnehmen, dass Bit 0-4 auf Port 0x89 die Lautstärke regeln. Allerdings streiken, wenn ich Bit 0 setze, sowohl yakc als auch JKCEmu (kein Sound, wobei die Soundemulation beim JKCEmu bei mir sowieso sehr instabil läuft). MAME verschiebt den Eingabewert um ein Bit nach rechts, gibt also nur 16 Lautstärke-Stufen aus (zu MAME hätte ich später noch ein paar andere Fragen, erscheint mir aber sinnvoller, dazu ggf. ein neues Thema erstellen). Auf Hardware habe ich das Ganze noch nicht testen können, da mir das entsprechende FBAS-Kabel fehlt.

Meine Frage also: Wie verhält sich das Ganze auf Original-Hardware? 16 Stufen oder 32? Und sind diese linear or logarithmisch gestaffelt? Und wie nutzt man das Ganze überhaupt - wird der Sound von den CTC-Kanälen zusammengemischt durchgegeben? Nur einer der CTC-Kanäle? Oder kann man den CTC hierbei komplett umgehen und nur die Lautstärke am PIO setzen?

Ich las außerdem, das am KC 85/4 sowieso nur 16 Stufen zur Verfügung stehen. Was hat es damit auf sich?

Dank im Voraus,
-utz
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
01.03.2023, 07:08 Uhr
Bert



Bei solchen Fragen würde ich nicht schauen, wie es die Emulatoren machen, sondern was im Schaltplan steht. Hier ein Auszug vom 85/3:


Sowohl beim 85/3 als auch beim 85/4 werden die Frequenzen K0 und K1 mittels CTC (Kanäle 0 und 1) und jeweils einem Flipflop gebildet. K0 und K1 gibt es als Stereoton ohne Lautstärkeregelung nur an der TAPE-Buchse.


Beim 85/3 dienen die PIO-Bits B0 bis B4 zur Pegeleinstellung für das Summensignal von K0 und K1. Die Widerstandswerte 1k, 2k, 3.9k, 8.2k und 16k sind so gewählt, das sich 32 lineare Lautstärkestufen ergeben.

Beim 85/4 fehlt der 16k-Widerstand, dafür kann man mit PIO-Bit B0 die Flipflops für K0 und K1 zurücksetzen (trück). Beim 85/3 ist es Zufall überlassen bzw. es hängt von der Tondauer ab, wie die Flipflops am Ende des jeweiligen Tons stehen bleiben. Das könnte bei der SAVE-Routine für Probleme sorgen.

Summasumarum: Es gibt beim 85/4 nur 16 Lautstärkestufen, aber das System bleibt grundsätzlich Softwarekompatibel zum 85/3.


Nebenbei: Was macht Deine Routine besser oder anders als UP TON (35h) vom CAOS?

Viele Grüße,
Bert


Kleiner Nachtrag: Der interne Piezo ist beim 85/3 immer aktiv (nur auf K0), während er sich beim 85/4 über die Lautstärkebits auch abschalten lässt.
--
Viele Grüße,
Bert

Dieser Beitrag wurde am 01.03.2023 um 07:13 Uhr von Bert editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
01.03.2023, 11:21 Uhr
ralle



Ich meinte, in den KC-News wurde schon mal sowas vorgestellt.
--
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
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
02.03.2023, 01:08 Uhr
utz



Bert, vielen Dank für die ausführlichen Erläuterungen, das hilft mir schon mal gut weiter. Schaltpläne lesen gehört leider nicht zu meinen Stärken, aber mit deiner Erklärung kann ichs mir einigermaßen zusammenreimen. 2 Nachfragen hätte ich im Moment noch:


Zitat:
Bert schrieb
Beim 85/3 dienen die PIO-Bits B0 bis B4 zur Pegeleinstellung für das Summensignal von K0 und K1. Die Widerstandswerte 1k, 2k, 3.9k, 8.2k und 16k sind so gewählt, das sich 32 lineare Lautstärkestufen ergeben.



Wenn der Eingang das Summensignal von K0 und K1 ist, müssten sich dann nicht 64 Lautstärke-Stufen ergeben?


Zitat:
Bert schrieb
Beim 85/3 ist es Zufall überlassen bzw. es hängt von der Tondauer ab, wie die Flipflops am Ende des jeweiligen Tons stehen bleiben. Das könnte bei der SAVE-Routine für Probleme sorgen.



Bedeutet das, dass es beim 85/3 also keine Möglichkeit gibt, um die Flipflops in einen bestimmten Zustand zu versetzen? Oder gibt es zumindest eine Möglichkeit, um den Zustand abzufragen, womit man dann durch Ausgabe einer bestimmten Frequenz für eine bestimmte Dauer einen gewünschten Zustand herstellen könnte?


Zitat:
Bert schrieb
Nebenbei: Was macht Deine Routine besser oder anders als UP TON (35h) vom CAOS?



Nichts wesentliches. Meine Routine arbeitet etwas schneller, aber grundsätzlich ging es mir erst mal nur darum, mich in die (Sound-)Programmierung am KC einzuarbeiten. Möchte darauf aufbauend natürlich weiter experimentieren.

Ralle, ich finde nur diesen Artikel hier:
https://www.iee.et.tu-dresden.de/~kc-club/02/KCN02-01/KCN02-01-000.HTML
Da gehts aber um den Z1013, also so nicht direkt übertragbar.

Dieser Beitrag wurde am 02.03.2023 um 01:11 Uhr von utz editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
02.03.2023, 07:18 Uhr
Bert




Zitat:
utz schrieb
Wenn der Eingang das Summensignal von K0 und K1 ist, müssten sich dann nicht 64 Lautstärke-Stufen ergeben?


K0 und K1 sind (digitale) Rechtecksignale, die von der CTC erzeugt werden. Die werden als linker und als rechter Kanal getrennt auf der TAPE-Buchse zur Verfügung gestellt (dort ohne Lautstärkeregelung).
Und ja, es macht einen Unterschied in der Lautstärke, ob man nur einen Kanal verwendet oder beide. Aber ich würde es nicht als 64 Lautstärkestufen bezeichnen.

Mir fällt auf Anhieb auch kein KC85-Programm ein, bei dem man die Lautstärke irgendwie aktiv einstellen könnte oder wo die Lautstärke gezielt für Effekte genutzt wird.


Zitat:

Bedeutet das, dass es beim 85/3 also keine Möglichkeit gibt, um die Flipflops in einen bestimmten Zustand zu versetzen?


Die /SET und /RESET-Eingänge der Flipflops sind per Pullup (1kOhm) auf Vcc gezogen. Damit dürfte sogar schon der Zustand beim Einschalten des Rechners undefiniert sein.


Zitat:

Oder gibt es zumindest eine Möglichkeit, um den Zustand abzufragen, womit man dann durch Ausgabe einer bestimmten Frequenz für eine bestimmte Dauer einen gewünschten Zustand herstellen könnte?


Nein. Es steht dann nach der Ausgabe zwar wieder im Ausgangszutand oder andersrum (je nach Länge des Tons), aber da der Ausgangszustand ungewiss ist, ist es auch der Endzustand.

Letztendlich führt das zu einer unbestimmten und unbestimmbaren 180°-Phasendrehung der Tonsignale beim 85/3. Dürfte damals kaum jemanden aufgefallen sein, da man Computer und Hifi-Anlage eher selten verbunden haben dürfte.
Entweder lief der Ton über den eingebauten Piezo, den Kassettenrekorder oder den TV. Und das waren i.d.R. alles Mono-Geräte.


Zitat:

Meine Routine arbeitet etwas schneller, aber grundsätzlich ging es mir erst mal nur darum, mich in die (Sound-)Programmierung am KC einzuarbeiten. Möchte darauf aufbauend natürlich weiter experimentieren.


Viel Erfolg :-)

Viele Grüße,
Bert
--
Viele Grüße,
Bert
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
18.04.2023, 21:08 Uhr
FL




Zitat:
utz schrieb
Ich wollte aber auch mal versuchen, die Lautstärke-Regelung über PIO-Kanal B zu nutzen.
...
Oder kann man den CTC hierbei komplett umgehen und nur die Lautstärke am PIO setzen?



Das hat mich interessiert.
Hier ein Versuch: (Der Klang läßt sich sicher noch verbessern.) REMSOFTW.KCC PIOSOUND.ASM

Das Programm ist für den KC85/4 und /5 gedacht, prinzipiell läuft es aber auch im KC85/2 und /3.
Der Haken: Es muß mindestens ein Ausgang der 2 Symmetrie-Flipflops HIGH sein, sonst hört man nichts.
Und die lassen sich beim KC85/2 und /3 nicht auf einen definierten Wert einstellen. (siehe #001)

Gruß
Frank.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
23.09.2026, 13:16 Uhr
lanale



Hallo zusammen,

ich hätte hier noch eine Frage zur generierten Spannung. Den Schaltplan habe ich mir zwar angesehen, aber da fehlt mir die Expertise.

Hier meine Überlegungen: Der Lautsprecher im TV-Gerät steht bei 0 Volt in der Ruhe-Stellung (Mitte), wenn eine positive Spannung anliegt, dann bewegt sich die Membran in die eine Richtung und wenn eine negative Spannung anliegt, dann bewegt sie sich in die andere Richtung. Die zwei Flip-Flops an den CTC-Kanälen erzeugen in der Summe 0 mal, 1 mal oder 2 mal eine bestimmte Spannung, die über die PIO-Lautstärke reduziert wird. Der Einfachheit halber nehmen wir an, dass die PIO-Lautstärke auf Maximum steht. Dann gibt es drei verschiedene Spannungen, je nach FlipFlop-Stellung. Welche Spannung wird in diesen drei Fällen an den Lautsprecher ausgegeben? Wenn alle drei Spannungen größer oder gleich 0 sind, dann würde die Membran immer nur in eine Richtung ausschlagen. Wenn andererseits die Schaltung im KC eine negative, eine Null- und eine positive Spannung erzeugen, dann würde die Membran am Lautsprecher zwar in beide Richtungen ausschlagen, aber wenn die FlipFlops beide konstant an oder aus sind, dann würde eine konstante Spannung am Lautsprecher anliegen und die Membran konstant in eine Richtung gedrückt werden.

Für mich ist das im Moment irgendwie unbefriedigend. Weiß jemand mehr und kann mich hier aufklären?

Zum Hintergrund meiner Frage: Ich möchte die Audio-Ausgabe in meinem KC-Emulator verbessern, sodass sie so weit wie möglich dem Original entspricht. Bei der Umsetzung entstehen die gleichen Fragen, weil man im PC/Browser einen Audio-Datenstrom mit Werten zwischen -1 und 1 erzeugen muss.

Vielen Dank für eure Hilfe!
Alexander
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
23.09.2026, 14:52 Uhr
ralle



Im NF-Weg des Fernseher hast du Koppelkondensatoren. Diese verschleifen die TTL-Rechteckspannung, die dem AV-Ausgang entnommen wird. Die Lautstärke und auch Tonlänge wirken Global. Ich habe vor längerer Zeit ein kleines BASIC-Programm gebastelt, das den internen Tongenerator steuert. Das ist auch im KC-Labor zu finden. Den hinundwieder stürzt der Ton ab. Was seltsame Töne bringt.

Also, es gehen beide Kanäle auf diese Ton-Endstufe mit Lautstärkeregelung und das bei beiden Serien. Nur beim /3 gibt es 5 Widerstände und beim /4 4 Widerstände, mit denen über die PIO die Lautstärke, also Global geregelt wird.
--
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 23.09.2026 um 19:48 Uhr von ralle editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
23.09.2026, 21:33 Uhr
FL



Hallo Alexander,

einen definierten Nullpunkt gibt es nicht.
Wenn beide Symmetrie-FF's 0 sind, dann ist auch am Ausgang 0. Egal was als Lautstärke eingestellt ist. (oder 5V, je nach Perspektive)
Ist eines der beiden Flip-Flops auf 1, wird eine Spannung erzeugt deren Höhe durch die PIO-Ausgänge bestimmt wird.
Sind beide Flips-Flops auf 1 der doppelte Wert.
Dadurch ergibt sich zusätzlich ein Gleichspannungsanteil, dessen Höhe ebenfalls von der Lautstärkeeinstellung abhängt.
Erst der Kondensator am Ausgang filtert diesen heraus. Diesen müßtest du in deinem Emulator eventuell mit berücksichtigen.

@Ralle: Welches Programm im KC-Labor ist das und wie kann ich mir "hinundwieder stürzt der Ton ab" vorstellen?

Gruß
Frank.
 
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