Robotrontechnik-Forum

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

Robotrontechnik-Forum » Technische Diskussionen » PT3 Player BIC A5105 » Themenansicht

Autor Thread - Seiten: -1-
000
06.12.2022, 19:13 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Ich habe ein Problem mit dem PT3 Player am BIC (A5105)... .
Mit Hilfe von Klaus läuft der PT3 Player jetzt ja am BIC auch ohne die Soundkarte.

Das Problem ist jetzt allerdings, dass man nur Songs bis knapp 7Kb abspielen kann.
Versuche, den Player bzw. die Player Engine in andere Speicherbereiche zu laden, haben bisher nicht funktioniert.
Momentan läuft der Player ab 0100H und die Engine ab 0C00H.
Der BIC hat einen freien Anwenderspeicher unter SCPX von 0100H bis 0E880H (etwa 59 Kb).

Hat jemand eine Idee ?

LG Cornelius
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
06.12.2022, 19:40 Uhr
Enrico
Default Group and Edit


Da war irgendwas komisches mit der Umschaltung der RAM-Bereiche.
Schick mal Dkt ne Mail, falls Du Glück hast, antwortet er.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
06.12.2022, 19:46 Uhr
BICa5105

Avatar von BICa5105


Zitat:
Enrico schrieb
Da war irgendwas komisches mit der Umschaltung der RAM-Bereiche.
Schick mal Dkt ne Mail, falls Du Glück hast, antwortet er.


.
.
.
Okay danke. Werde ich mal versuchen.
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
06.12.2022, 22:42 Uhr
DKt



Hallo Cornelius,
das Problem, das Enrico anspricht, ist die Speicherumschaltung des BIC.

Der TPA des SCPX von 0100H bis 0E880H kann schon hinkommen.

Der BIC kann theoretisch 256kB Speicher adressieren. Dieser ist in 4 Ebenen (Bänke) aufgeteilt, von denen jede wiederum in 4 16kB Segmente unterteilt ist. Gebootet wird der BIC mit aktiv geschalteter Bank 0. Dort liegt das "BIC SYSTEM" und das BASIC als ROM.

Das CP/M (SCPX5105) liegt im RAM in Bank2 linear von Adresse 0000 bis 0ffffh.
D.h. ein CP/M-Programm wird beim Laden linear ab 100h in die Bank 2 geschrieben. Das CP/M liegt allerdings in einem ROM, der mit auf dem FDC drauf ist. Dieser wiederum liegt in Bank1 oder 3 (je nach Slot) Wenn das Programm einen Systemaufruf macht, dann spingt es in den kleinen RAM-Bereich ab 0e880h, schaltet den Slot um, führt die OS-Funktionalität aus, schaltet zurück und springt ins rufende Programm in Slot2.

Was nun sein, kann. ist, dass die Musikdaten bei 7kB genau bei Adresse 4000h liegen. Wenn jetzt zB aufgrund eines Seiteneffekts einer Betriebssystemfunktion (oder irgend etwas anderem) auf Adresse 4000h nicht mehr der RAM der Bank2 liegt, sondern der ROM der Bank1 oder 3, dann werden ab der Adresse die Musikdaten plötzlich durch das CP/M-ROM ersetzt oder durch das BASIC oder irgend etwas anderes, was da gerade einen ROM hingeworfen hat.

Die Frage, die sich stellt, ist, was nach den 7kB Musikdaten im Speicher liegt, und ob das zufällig dem ROM-Inhalt des BIC entspricht.

Soweit das,was mir einfällt (ich hoffe, es ist halbwegs pädagogisch wertvoll rübergekommen).

Viele Grüße, Dirk
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
07.12.2022, 08:11 Uhr
BICa5105

Avatar von BICa5105


Zitat:
DKt schrieb
Hallo Cornelius,
das Problem, das Enrico anspricht, ist die Speicherumschaltung des BIC.

Der TPA des SCPX von 0100H bis 0E880H kann schon hinkommen.

Der BIC kann theoretisch 256kB Speicher adressieren. Dieser ist in 4 Ebenen (Bänke) aufgeteilt, von denen jede wiederum in 4 16kB Segmente unterteilt ist. Gebootet wird der BIC mit aktiv geschalteter Bank 0. Dort liegt das "BIC SYSTEM" und das BASIC als ROM.

Das CP/M (SCPX5105) liegt im RAM in Bank2 linear von Adresse 0000 bis 0ffffh.
D.h. ein CP/M-Programm wird beim Laden linear ab 100h in die Bank 2 geschrieben. Das CP/M liegt allerdings in einem ROM, der mit auf dem FDC drauf ist. Dieser wiederum liegt in Bank1 oder 3 (je nach Slot) Wenn das Programm einen Systemaufruf macht, dann spingt es in den kleinen RAM-Bereich ab 0e880h, schaltet den Slot um, führt die OS-Funktionalität aus, schaltet zurück und springt ins rufende Programm in Slot2.

Was nun sein, kann. ist, dass die Musikdaten bei 7kB genau bei Adresse 4000h liegen. Wenn jetzt zB aufgrund eines Seiteneffekts einer Betriebssystemfunktion (oder irgend etwas anderem) auf Adresse 4000h nicht mehr der RAM der Bank2 liegt, sondern der ROM der Bank1 oder 3, dann werden ab der Adresse die Musikdaten plötzlich durch das CP/M-ROM ersetzt oder durch das BASIC oder irgend etwas anderes, was da gerade einen ROM hingeworfen hat.

Die Frage, die sich stellt, ist, was nach den 7kB Musikdaten im Speicher liegt, und ob das zufällig dem ROM-Inhalt des BIC entspricht.

Soweit das,was mir einfällt (ich hoffe, es ist halbwegs pädagogisch wertvoll rübergekommen).

Viele Grüße, Dirk


.
.
.
Hallo Dirk,

danke. Ja gut rübergekommen ist es aber klingt auch recht verwirrend wie das bei dem BIC da mit dem Speicher geregelt ist ... .
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
07.12.2022, 08:38 Uhr
wpwsaw
Default Group and Edit


Hallo Dirk,

denkst du bitte an das umbasteln des USB Treibers ;-)) wie du das mit dem RAF Treiber gemacht hast...

hat ja auch dieses Bank Umschalt Problem

Gruß
wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
07.12.2022, 15:54 Uhr
ralle



Das Gerät ist selber recht verwirrend, da ansatzweise nicht wirklich Kompatibel zum Rest der Robotronwelt ist.
--
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
007
07.12.2022, 17:31 Uhr
Klaus



Hallo,

Danke an Dirk für die Aufklärung zu der Speicherumschaltung beim BIC.
Ich hatte versucht, den PT3/STC-Player an das SCPX vom BIC und den im BIC emulierten AY3 Chip anzupassen, weil Cornelius da ein wenig experimentieren möchte.

Ein Problem ist momentan noch, der BIC-CTC.
Hier nutze ich bisher nur den Kanal 1 (der frei verfügbar ist).
Mit einem CTC Kanal vom BIC und den 3,75MHz Taktfrequenz komme ich mit Vorteiler 256 und Zeitkonstante 255 leider nur auf die 57Hz, statt eigentlich 50Hz, für die die STC/PT3 Songs ausgelegt sind. …. Heißt, die Songs laufen ein klein wenig zu schnell.

Ob das mit einer Kaskadierung mit einem zweiten freien Kanal geht, müsste evtl. einer der BIC- Experten herausfinden. Kanal 3 soll ja theoretisch auch frei sein? Aber die Verschaltung ist mir nicht ganz klar. Und ob das ohne Hardware-Eingriffe machbar ist, weiß ich auch nicht.

Schon damals, als wir die K1520-Sound-Karte für den BIC fit machen wollten, gab es Probleme.
Nein nicht mit den 50Hz…. Das war dank der eigenen CTC auf der K1520-Sound-Karte und Kaskadierung von zwei Kanälen, leicht gelöst.

Komischerweise lief die Player-Routine, die alle 50ms per Interrupt aufgerufen wird, nur ab dem Speicherbereich C000h. Auch der abzuspielende Song muss dort oben hin geladen werden.
Da wird natürlich der Speicher bis zu den erwähnten E880h knapp und der Song (PT3 oder STC) darf nicht sehr groß sein.
Damals haben wir das nicht weiter verfolgt, weil der BIC, wie schon mehrfach geschrieben, in der Hobbygemeinde wohl eher ein „Schattendasein“ führt und die K1520 Sound-Karte dort auch wenig Sinn macht, wenn die 3 im BIC eingebauten Sound-Kanäle alle laufen.

Ich selbst bin kein BIC Experte und die eigenartige Speicherumschalterei ist da wohl eines der Probleme. Das muss man genau verstehen um evtl. per Software irgend etwas anzupassen.

Viele Grüße,
Klaus

Dieser Beitrag wurde am 07.12.2022 um 17:34 Uhr von Klaus editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
07.12.2022, 18:08 Uhr
maleuma



Hallo Klaus,

macht der CTC Interrupt? Dann lass den CTC doch mit 100Hz laufen und einen 0/1-Zähler, sodass nur jeder 2. Interrupt etwas bewirkt und der andere einfach mit RETI beendet wird.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
07.12.2022, 18:11 Uhr
BICa5105

Avatar von BICa5105


Zitat:
ralle schrieb
Das Gerät ist selber recht verwirrend, da ansatzweise nicht wirklich Kompatibel zum Rest der Robotronwelt ist.


.
.
.
Naja..ist schon kompatibel. Viele Anwendungen vom 1715 laufen zum Beispiel auf dem BIC.
Allerdings halt nur solche die nicht in die Speicherverwaltung eingreifen oder in den Videospeicher.
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
07.12.2022, 18:13 Uhr
Klaus



Hallo Mario,

ja... die CTC macht den Interrupt.

Auf die Zähleridee bin ich nicht gekommen.
Mal sehen, wie man das umsetzen kann.
Bin ja auch nur ein Programmierstümper ;-)

Danke für den Denkanstoß.
Viele Grüße,
Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
07.12.2022, 18:22 Uhr
BICa5105

Avatar von BICa5105


Zitat:
Klaus schrieb
Hallo Mario,

ja... die CTC macht den Interrupt.

Auf die Zähleridee bin ich nicht gekommen.
Mal sehen, wie man das umsetzen kann.
Bin ja auch nur ein Programmierstümper ;-)

Danke für den Denkanstoß.
Viele Grüße,
Klaus


.
.
.
Hallo Klaus,
hey....Programmierstümper?.tststs. Schön, dass es so Leute hier gibt wie dich, sonst wären solche wie ich aufgeschmissen ;-) .
Freut mich echt, dass du dem BIC auch Aufmerksamkeit schenkst.
So bleibt nicht für immer verborgen wozu er fähig ist.
Danke auch an die anderen die sich mit beteiligen !
.
.
.
LG Cornelius
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
07.12.2022, 19:02 Uhr
Klaus



Hallo Cornelius,

Danke für Deine gut gemeinten Worte, aber ich bin da wirklich nur ein absoluter Laie.
Hab mich eigentlich auch nur „reingehängt“ weil mich das mit dem emulierten AY-Sound am BIC interessiert hat.

Die echten Programmierprofis findest Du, wenn Du mal an CAOS, die UTOOLs, die Netzwerktools, den File Commander, die Mega-Modul-Software, die Sound- und Spielprogramme, und, und, und …. denkst.

Die Liste würde sehr lang werden.

Viele der Programmierer sind ja zum Glück hier noch aktiv. Einige arbeiten nur im Hintergrund und einige haben sich leider aus unterschiedlichen Gründen vom Hobby zurückgezogen.

Ich selbst habe sowas nicht gelernt und arbeite bei meinen „Versuchen“ nur nach der „Try and Error“ Methode… was natürlich extrem zeitaufwändig ist.

Hier ist der JKCEMU vom Jens ein unwahrscheinlich geniales Hilfsmittel. Alles am echten System zu erstellen und zu testen, würde vermutlich Ewigkeiten dauern.

Das nur mal am Rande.
Ich freue mich über die vielen fleißigen Hard- und Software-Entwickler, die Ihre Freizeit für den Spaß an den alten Kisten opfern, von denen wir fast alle hier profitieren. Danke!

Nicht nur ich werde wohl ab und zu belächelt ….. wenn ich erzähle, mit was für (in deren Augen) Elektronikschrott, ich einen Teil meiner Lebenszeit verbringe.
Bitte nie nach einem Sinn fragen … ein Hobby soll Spaß machen.

Viele Grüße,
Klaus

Dieser Beitrag wurde am 07.12.2022 um 19:04 Uhr von Klaus editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
09.12.2022, 01:21 Uhr
Crawler

Avatar von Crawler

Hallo, ich beobachte das Thema A5105 / BIC hier im Forum bereits einige Tage und bin erstaunt darüber, was auf der Plattform bereits mit RBASIC möglich ist und überrascht, wie schnell bestehende Software auf den BIC portiert werden konnte. Auch wenn ich bisher keinerlei Erfahrungen mit dem Rechner machen durfte, möchte ich dennoch versuchen, hier auch etwas beizutragen.
Ich habe mir mal wegen dem für den PT3/STC-Player benötigten 50 Hz Interrupt den Schaltplan angeschaut. Dort ist zu erkennen, daß zwar kein vertical blanking interval (VBI) als Trigger Signal für die CTC bereitgestellt wird, jedoch können die CTC-Kanäle 0, 2 und 3 kaskadiert werden, um in den Bereich von 20 ms zu kommen. Mit ein wenig Zahlen-Jonglieren komme ich z.B. mit Vorteiler 16 und Zeitkonstante 30 für den ersten Kanal und Zähler 156 für den zweiten Kanal auf 50,08 Hz. Das geht mit anderen Werten sicherlich auch noch genauer. Eventuell kann man sich (wie oben bereits erwähnt wurde) die Verwendung des zweiten CTC-Kanals auch sparen, wenn man in der Interrupt-Routine selbst mitzählt.

Dieser Beitrag wurde am 09.12.2022 um 01:24 Uhr von Crawler editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
09.12.2022, 07:32 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Moin Crawler,

danke, dass du dir da auch Gedanken gemacht hast. Auch eine Möglichkeit die du beschreibst.
Mario hatte da auch eine gute Idee die dann Klaus im Programm umgesetzt hat.
So laufen die Songs ( PT3 und STC ), mit 50 Herz, in original Geschwindigkeit.
Soweit passt da in der Richtung alles.
Das Problemchen mit dem Speicher und der Song Größe besteht halt noch.
Da eine Idee ;-) ?
.
.
.
LG Cornelius
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
09.12.2022, 11:09 Uhr
kaiOr

Avatar von kaiOr

Wo gibt es denn den neuen PT3-Player?
In der Version von 2018 steht was von:

START: EQU 100h
PLAYERANF: EQU 0C000h
...
PLAYEREND:
;-------------------------------------------------
SNG_ZEIG: EQU PLAYEREND+1
;SONG-BEGINN

Der Patterndecoder und dessen Stack arbeitet irgendwo unterhalb von:
PDSP_: LD SP,3131H

Den müsst Ihr ja dann auch verlegt haben?

Dieser Beitrag wurde am 09.12.2022 um 11:14 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
09.12.2022, 12:50 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Den angepassten PT3 und STC Player und ein paar Beispielsongs kann man hier herunterladen:

https://www.dropbox.com/sh/ra7v9hcvyla87d1/AAAt52pAIwp6lYIUwfo1336aa?dl=0

Es ist auch eine DSK dabei wo alles drin ist.
STC Songs sind keine mit dabei.
STC lassen sich einfach mit dem Vortex Tracker2 zu PT3 umwandeln... .

Nach dem ersten Songaufruf mit playpt3 dateiname.pt3 kann man danach auch einfach
go dateiname.pt3 tippen!
.
.
.
--
https://www.youtube.com/@robotronA5105

Dieser Beitrag wurde am 09.12.2022 um 12:50 Uhr von BICa5105 editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
09.12.2022, 13:55 Uhr
Klaus



Hallo,

zuerst mal vielen Dank an Mario, Crawler und KaiOr, für die Unterstützung.
Ich habe den BIC momentan nicht wieder auf dem Basteltisch und probiere alles nur im JKCEMU.

Unter Umständen ist das Verhalten am echten BIC auch ein wenig anders, aber die Tests am echten BIC übernimmt Cornelius.

Die Quellen der beiden modifizierten Player vom Rolf, habe ich mal temporär hier angelegt.

EDIT: Link entfernt

(... letzter Stand...vermutlich ähnlich dem, das was Cornelius schon abgelegt hat, paar Kommentare noch geändert).

Das Start- bzw. Songlade-Programm für den PT3 bzw. STC Player liegt wie bei CP/M üblich ab Adresse 100h.
Die AY-Player-Routinen (in der auch die Interruptroutine ist) habe ich auf C000h verschoben, weil es unterhalb nicht funktioniert hat.
Beide Programmteile haben jeweils einen eigenen Stack, der jeweils am Ende liegt.

Im Grunde habe ich damals, als wir die K1520-Soundkarte gebastelt hatten, nur einen Versuch unternommen, die Quellen vom Rolf, irgendwie an den BIC unter SCPX anzupassen, um festzustellen, ob die Karte vom Daniel auch im BIC zum dudeln zu bringen ist.
Wirklich genutzt hat das vermutlich keiner.

Nun kam Cornelius mit der Idee, den BIC-AY Chip zu verwenden. Mir war bis dato nicht mal bewusst, dass dies ein AY3-8910/12 Chip Nachbau ist.

Bis auf den KC87 (da laufen Interruptroutinen hardwarebedingt auch nur oberhalb 8000h) funktionieren alle PT3-, STC-Player auf anderen Rechnern (A5120, K8924, NANOS,….) unabhängig von einem bestimmten Speicherbereich.
Der BIC ist da wohl etwas eigen ;-)

Vielleicht findet Ihr ja eine Lösung und könnt Cornelius weiter helfen.
Evtl. gibt es ja auch Wege, das alles ohne SCPX zu machen.
Ich habe vom BIC leider null Ahnung.

Die beiden anderen Player vom Rolf, die die Song- Dateien direkt vom USB-Stick abspielen, könnten dann ja auch noch angepasst werden. Voraussetzung der BIC hat eine USB-Karte stecken.

Danke und viele Grüße,
Klaus

Dieser Beitrag wurde am 09.12.2022 um 22:50 Uhr von Klaus editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
09.12.2022, 14:04 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Beim echten BIC klingt es noch besser als im JKCEMU ;-)
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
09.12.2022, 19:29 Uhr
kaiOr

Avatar von kaiOr

DKt hat es wohl auf den Punkt gebracht, einige OS-Routinen liegen im ROM (Systemuhr, Bildausgabe, Tastaturabfrage etc.) und werden immer mal angefahren. Wollen wir eigene Interruptquellen nutzen müssen wir die Zuordnung der Speichersegmente natürlich mit sichern/anpassen und rücksichern. Die ISR oder eine Hilfs-ISR sollte also immer in Bank (Slot) 2 Seite (Segment) 3 liegen -> ab C000h, weil der Bereich unter SCPX keine Sprünge macht. Oberstes Ende des Anwenderspeichers ist 0E880h.

*rumpfusch&flücht*

playpt3.asm:
...
PLAYERANF: EQU 0D000h ;Adresser der Player-Engine
...
SNG_ZEIG: EQU PROGEND+1
...

PT3_BIC.INC:
...
ISR: DI
LD (SPSV2),SP ;Stackpointer merken
LD SP, STACK2 ;lokaler Stack
PUSH IY
PUSH HL
PUSH DE
PUSH BC
PUSH AF
EX AF,AF'
PUSH AF
ld a,(imerk) ;nur jeden zweiten Interrupt nutzen
or a ;d.h. 100Hz/2 = 50Hz
jr z,irz0 ;Interruptzähler war noch 0

;AY nur bei jedem zweiten Interrupt programmieren
LD A,(PAUSE)
OR A
JR NZ,PAUSE1 ;KEIN FORTSCHRITT
LD C, 0A8H ;Port Speicherverwaltung (SVG)
IN A,(C)
PUSH AF
LD A, 0AAH ;RAM-Segment 0-3 auf Slot/Bank 2
OUT (C),A

CALL PLAY_Q ;1 SEGMENT ABSPIELEN
POP AF
OUT (0A8H),A

xor a
ld (imerk),a ;Interruptzähler wieder auf 0
...

Dieser Beitrag wurde am 09.12.2022 um 19:40 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
09.12.2022, 20:19 Uhr
BICa5105

Avatar von BICa5105

.
.
.
WOW DANKE, kaiOr !!!

Habe es eben am BIC getestet. Funktioniert einwandfrei.
Jetzt sind die "großen" Songs auch kein Problem mehr.
Habe Songs mit 16Kb ohne Probleme abgespielt.

Eine kleine Sache ist aber anders: Man muss jetzt immer Playpt3 dateinamen.pt3
schreiben. Nur go dateinamen.pt3 nach dem ersten Start geht nicht mehr.
Aber das ist glaube ich sowieso nur eine BIC Eigenheit, dass man so Programme aufrufen kann die schon im Speicher sind?!...
.
.
.
Cornelius
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
09.12.2022, 21:17 Uhr
Klaus



Hallo,

bin gerade nach Hause gekommen und hab den PT3-Player schnell mal angepasst.
Läuft auch im JKCEMU und spielt nun gerade einen ca. 20kb großen PT3-Song ab.

Großartig kaiOr !!!!

Solche Kniffe muss man erst mal herausfinden.
Möglicherweise steht es ja auch in einer der vielen BIC-Dokus, aber mir fehlte die Zeit und Lust alles zu Lesen.

Auch von mir … Vielen Dank für Deine Hilfe.
Morgen passe ich dann den STC-Player an.

Danke und viele Grüße,
Klaus

Dieser Beitrag wurde am 09.12.2022 um 22:48 Uhr von Klaus editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
09.12.2022, 22:58 Uhr
kaiOr

Avatar von kaiOr

Quatsch, Ihr seid großartig! Ich bin hier der Pfuscher.

Es gibt die GO.COM (0 Byte große Datei) auf manchen SCP-Disketten. SCP läd dann einfach die 0 Bytes bzw. nichts ab 0100h und springt die Adresse 0100h an (wo ja noch das alte Programm geladen ist).
Da ich aber Teile des ursprüngl. Programmes schon mit Songdaten überlade, geht der anfängliche LDIR ("PLAYER Engine hochladen") beim zweiten mal schief. *ups*
Lösungen:
-Song doch etwas weiter hinten laden (gibt es PT3-Dateien >=50kByte?)
-Engine garnicht hochladen, nur eine kleinere ISR-Hilfsroutine
-das LDIR im weiteren Programmverlauf auch überschreiben/überspringen, z.B. mit

Quellcode:
ORG       START
          ;PLAYER Engine hochladen
          ld      hl,PROGEND            ;ENDE HAUPTPROGRAMM
          ld      de,PLAYERANF          ;ANFANG PLAYER ENGINE
          ld      bc,PLAYEREND-PLAYERANF;LÄNGE PLAYER ENGINE
ONCE:     ldir
          ld hl, 0
          ld (ONCE), hl
          ;lokalen Stack einrichten

...das ist die "Ich pfusche fröhlich weiter"-Methode.

Gruß,
Kai

Dieser Beitrag wurde am 09.12.2022 um 23:00 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
10.12.2022, 08:23 Uhr
BICa5105

Avatar von BICa5105

.
Den Song könnte man schon noch etwas weiter hinten laden.
PT3 über 50Kb...das sind dann schon monströse Dinger :-)).
Also die größten sind meistens so maximal 30 Kb.

Der BIC hat diesen go Befehl schon mit im ROM. Von Diskette muss man da nix mehr laden.

Das genialste wäre natürlich wenn man den Player / Songs von einer grafischen Bedienoberfläche von RBasic aus aufrufen könnte ;-).

Die Oberfläche etc. ist ja kein Problem...nur wie würde der Aufruf erfolgen ?
Könnte man das ganze komplett im Basic abwickeln beim BIC.
So "umherspringen" von RBasic zu SCPX geht ja glaube ich nicht?!
Er läd ja entweder RBasic aus dem Rom oder SCPX.

Ideen ?
.
.
LG Cornelius
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
10.12.2022, 10:27 Uhr
Klaus



Hallo,

@kaiOr
Was heißt hier… „Ich pfusche fröhlich weiter“….???
Nix da! ….…. Du hilfst !!! uns sehr weiter. Vielen Dank!

Der Trick mit dem unterdrücken der weiteren LDIR Aufrufe funktioniert.
Es gibt sicher elegantere Methoden, aber die beiden Zeilen Assemblercode machen das Kraut nicht fett ;-)
Hier nochmal temporär (nur kurzzeitig) die geänderten Quellen der Player.

EDIT: Link entfernt

Man muss bedenken, diese beiden Programme vom Rolf, dem ich an dieser Stelle nochmal ganz herzlich danke (falls er mit liest), waren damals nur für Testzwecke entstanden, um die eigentliche Abspielroutine (Player-Engine), die als INC-Datei eingebunden wird, auf unterschiedlichsten Systemen zu testen.

Womit wir gleich bei der Frage vom Cornelius sind:
Leider bin ich beim RBASIC bzw. BASIC allgemein, komplett raus.

Keine Ahnung, ob und wie man dort eine Assembler-/Maschinencode-Routine (mit Interruptroutine) einbinden kann. Die Player-Routinen lassen sich ja prinzipiell in verschiedene Programme einbauen.
Das hat Rolf an seinen vielen entstandenen Musikprogrammen, gezeigt.

Nächste Frage ist, ob es im RBASIC dann auch diese etwas „spezielle“ Speicherverwaltung gibt und wie es mit Interrupts aussieht.
Klar wäre das eine feine Sache, wenn schöne Bildchen oder Männlein über den Bildschirm huschen und dabei im Hintergrund PT3 oder STC Songs dudeln.

Mit ganz primitiven Zeichen habe ich das mit dem CPMTRIS (einfaches Tetris unter CP/M) realisiert, wo während der Laufzeit ca. 20 komprimierte STC Songs entpackt und in zufälliger Reihenfolge im Hintergrund mit der K1520-Sound-Karte „gedudelt“ werden.
Allerdings läuft das Programm im BIC nicht sauber und „hakelig“, aber auf meinen anderen Kisten (NANOS, A5120, K8924,…) geht es prima. Natürlich alles in Assembler und zum Abspielen ist die STC-Player-Engine vom Rolf eingebaut.

Vielleicht geht es ja mit RBASIC und der BIC kann auch ein Spielchen mit AY-Musik im Hintergrund anbieten. Inzwischen sind ja einige Spiele für den KC87, JU+TE, KC85 entstanden, die sich dann u.U. auch für den BIC umsetzen lassen (mit zusätzlichem AY Sound).
Oder eben auch eine schöne grafische Oberfläche, wie bei einigen Sinclair-Programmen, wo die die Songs ausgewählt und abgespielt werden.

Aber wie schon geschrieben, da muss ich mich leider ausklinken. Das ist dann was für die wirklichen Programmierer hier im Forum.

Viele Grüße,
Klaus

Dieser Beitrag wurde am 10.12.2022 um 19:28 Uhr von Klaus editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
10.12.2022, 11:19 Uhr
ralle



Klaus, im Basic-programmierhandbuch, zu finden auf Ullis Seiten, ist sowas beschrieben...
--
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
026
10.12.2022, 12:28 Uhr
Klaus



Ja ralle,

die Dokus vom Ulrich habe ich alle hier, aber BASIC ist schon Jahrzehnte her und mir fehlt einfach die Zeit, da wieder bei Null anzufangen.
Solche Projekte überlasse ich lieber den BASIC-Experten…. Machst Du nicht auch viel mit BASIC? ... ran ans Werk ;-)

Viele Grüße,
Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
16.12.2022, 21:50 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Hier mal ein Video mit PT3 Songs auf dem BIC. Klingen doch ganz gut oder ?

https://youtu.be/BUyvzSiX5jU

Danke nochmal an alle die mitgeholfen haben, dass der BIC auch ohne Soundkarte Musik abspielt...auch "große" PT3 und STL inzwischen ;-) !

Hat nicht wer Lust eine grafische Oberfläche für den BIC PT3 Player zu programmieren ;-)?

LG Cornelius
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
028
16.12.2022, 23:48 Uhr
Lötspitze



Entspricht der aktuelle Stand noch dem, den Du am 09.12. [016] hochgeladen hattest? Oder gibt es neuere Dateien?

VG Matthias

Nachtrag; wo müssen die PT3-Dateien stehen, damit sie der Player findet?
--
___________________
...geboren, um zu löten.

Wer rennen soll, muß auch mal stolpern dürfen.

Dieser Beitrag wurde am 16.12.2022 um 23:51 Uhr von Lötspitze editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
029
17.12.2022, 09:32 Uhr
BICa5105

Avatar von BICa5105


Zitat:
Lötspitze schrieb
Entspricht der aktuelle Stand noch dem, den Du am 09.12. [016] hochgeladen hattest? Oder gibt es neuere Dateien?

VG Matthias

Nachtrag; wo müssen die PT3-Dateien stehen, damit sie der Player findet?


.
.
.
Hallo Mattias,

der aktuelle Stand (neue Änderung: große PT3 Dateien abspielen) ist hier zu finden:

https://www.dropbox.com/s/9fibndwwx9kbr4e/PT3BIC.dsk?dl=0

Die "Playlist", welche in dem Video zu sehen ist, hatte ich nur so für mich in den Player eingefügt. Da gibt's noch keine Disk Version welche die Dateien selbst findet.

LG Cornelius
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
030
11.01.2023, 15:49 Uhr
robbi
Default Group and Edit
Avatar von robbi

BICa5105 hat mir eine "Musikdiskette" für das GOTEK geschickt.
Ich bin endlich mal zum Testen gekommen.
Es funktioniert laut über den Fernsehlautsprecher, aber für mein verwöhntes Ohr sind die ausgewählten Titel eher Geräusche.
Oder braucht man dazu noch etwas?
--
Schreib wie du quatschst, dann schreibst du schlecht.

Dieser Beitrag wurde am 11.01.2023 um 15:52 Uhr von robbi editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
031
11.01.2023, 19:55 Uhr
BICa5105

Avatar von BICa5105


Zitat:
robbi schrieb
BICa5105 hat mir eine "Musikdiskette" für das GOTEK geschickt.
Ich bin endlich mal zum Testen gekommen.
Es funktioniert laut über den Fernsehlautsprecher, aber für mein verwöhntes Ohr sind die ausgewählten Titel eher Geräusche.
Oder braucht man dazu noch etwas?


.
.
.
Dein Gehör ist einfach zu verwöhnt für den rauen 8Bit Sound ;-).

Habe dir per Mail noch den PT3 Player geschickt mit Musikstücken.
Vielleicht ist da ja was für deinen Geschmack dabei :-)
.
.
.
--
https://www.youtube.com/@robotronA5105
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
032
11.01.2023, 20:45 Uhr
BICa5105

Avatar von BICa5105

.
.
.
Das Problem ist, dass die Sound Dateien auf verschiedenen Rechnern mit teilweise auch anderen Sound Chips ( AY-3-8910, YM2149, AY-3-8912, Yamaha Y8950 etc.) erzeugt wurden. An manchen Rechnern bzw. Modulen konnte man extra noch per Schalter die Reihenfolge der 3 Soundkanäle ändern. Das geht beim BIC nicht.
(Außer man benutzt die Soundkarte, dort kann man die Kanalreihenfolge anpassen).
Die Rechner hatten auch unterschiedliche Taktfrequenzen.
Das wird durch den Player zwar angepasst, aber ist dann auch nicht 100% so wie bei dem original Rechner an dem der Song erzeugt wurde.
Weiterhin werden ja auch heute noch PT3, STL etc. Musik Dateien erzeugt. Allerdings oft
in Emulatoren. Das ist dann nochmal ein Problem.
Emulator und richtiger Rechner.....das ist ja oft nicht wirklich 100% gleich.

Mir ist aber aufgefallen, dass der BIC scheinbar mit sehr tiefen Frequenzen/Effekten manchmal Probleme hat und dann etwas "daneben" liegt. Es kommt aber halt da auch wieder auf den Song an und wie er erzeugt wurde?!

Man müsste mal ein paar Songs speziell für den BIC kreieren. Hat jemand Lust ;-)

LG Cornelius
.
.
.
--
https://www.youtube.com/@robotronA5105
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