• Welcome to Schneider / Amstrad CPC Forum.
Welcome to Schneider / Amstrad CPC Forum. Please login.

17. April 2026, 19:42:24

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!

Recent

Members
Stats
  • Total Posts: 12,834
  • Total Topics: 1,528
  • Online today: 215
  • Online ever: 1,724
  • (16. January 2020, 00:18:45)
Users Online
Users: 0
Guests: 155
Total: 155

155 Guests, 0 Users

MIDI

Started by TFM, 23. July 2019, 21:49:09

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TFM

EMR MIDI Interface... hab gerade ins CPCAI geguckt, 1987, Februar, Seite 24ff.... ob man das wohl emulieren könnte?
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 24.12.2025)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)

Rennert

Midis find ich geil. War damals schön, als Midis als Klingeltöne an Handys verwendet wurden ;D

LambdaMikel

LambdaSpeak 3 MIDI In funktioniert wohl auch bald... interessanterweise ist das Verarbeiten der MIDI Messages am CPC doch komplexer als ich dachte! Hintergrund sind die Midi Optimierung zum "Running Status"... damit werden Bytes gesparrt. Habe ich gegruebelt warum meine CPC-Midi-Implementierung so lahm war... und das in Z80. Lag aber daran dass ich das Protokoll nicht komplett verstanden hatte und Messages ignoriert wurden! Jetzt aber... kommt demnaechst.

LambdaMikel

Quote from: Rennert on 23. July 2019, 21:57:04
Midis find ich geil. War damals schön, als Midis als Klingeltöne an Handys verwendet wurden ;D

Klar, jetzt musst nur noch rausfinden wie Du den CPC samt Monitor ans Ohr fuehrst wenn's MIDI-klingelt  :irre:

LambdaMikel

So, LambdaSpeak 3 MIDI IN funktioniert jetzt - hier mal was zum Angucken / Hören (sorry, kann nicht wirklich Keyboard / Klavier spielen):

[CPCEmulator]https://youtu.be/RRG1JTxKXD8[/CPCEmulator]

Wohlgemerkt - der Sound kommt aus dem CPC, nicht aus dem Synthesizer / Keyboard!

Der "CPC MIDI Synthesizer" ist mit MAXAM gemacht; werde das Programm auf die LS300.DSK auf die LS3 Github-Seite tun. Demnächst will ich noch 3-Kanal Polyphonie, Pitch Bend, und Velocity für MIDI Messages einbauen. Momentan ist es nur monophon. Kommt demnächst.

Wie man sieht, ist der CPC schnell genug, um als MIDI IN AY Synthesizer zu werkeln! Mit BASIC klappt das natürlich nicht, die MIDI Messages kommen schon recht schnell an und müssen ja zügig abgearbeitet werden. War für mich mal wieder eine schöne Sache, etwas Z80 machen zu können. Werde wie gesagt noch ein bißchen weiter dran rumwerkeln.

Für MIDI OUT reicht übrigens BASIC...

TFM

Super cool!!! Ein Tip der Befehl "nocode" schaltet beim Assemblieren die Textausgabe aus, dann geht's schneller.  :)
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 24.12.2025)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)

LambdaMikel

Quote from: TFM on 08. August 2019, 14:53:48
Super cool!!! Ein Tip der Befehl "nocode" schaltet beim Assemblieren die Textausgabe aus, dann geht's schneller.  :)

Danke, guter Tipp... und hier noch mal eine Frage an den Z80-Experten. Bitte mal Screenshot angucken. Frage ist - wie kann ich das besser machen?

Ich habe eine Tabelle mit Notenwerten im Speicher, das sind SOUND Perioden, also DEFWs. Die Tabelle startet bei label .cm3. Nun habe ich in A die Notennummer "note". Davon muss ich 24 subtrahieren, damit ich bei der ersten Note anfange in der Tabelle. Frage - wie kann ich nun am geschicktesten das Wort aus des DEFW Tabelle an Speicher-Stelle "cm3 + note" in BC laden? Meine Loesung funktioniert zwar, aber ich dachte, dass muss doch eleganter gehen in Z80.


TFM

anstatt
ld hl,xxxx
ld (hl),c
inc hl
ld (hl),b

kannst Du auch
ld (xxxx),bc

schreiben

Achtung: B, C sind hier vertauscht!

Anstatt das in BASIC zu machen kannst ja den Text-Editor vom Maxam nutzen (!M,2). Dann läßt es sich leichter editieren.

Ansonsten sind Screenshots nicht so gut, weil man den Kontext nicht sieht. (z.B. wie groß/klein können Variablen werden etc.

Schneller geht's mit selbst modifizierendem Code. Dein Beispiel ist aber schon gut gecodet.  :)
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 24.12.2025)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)

LambdaMikel

Quote from: TFM on 08. August 2019, 23:27:22
anstatt
ld hl,xxxx
ld (hl),c
inc hl
ld (hl),b

kannst Du auch
ld (xxxx),bc

schreiben

Achtung: B, C sind hier vertauscht!

Anstatt das in BASIC zu machen kannst ja den Text-Editor vom Maxam nutzen (!M,2). Dann läßt es sich leichter editieren.

Ansonsten sind Screenshots nicht so gut, weil man den Kontext nicht sieht. (z.B. wie groß/klein können Variablen werden etc.

Schneller geht's mit selbst modifizierendem Code. Dein Beispiel ist aber schon gut gecodet.  :)

Danke, werde ich demnächst ändern!

LambdaMikel

Habe ein bisserl weiter programmiert, und habe nun polyphones MIDI IN am CPC Synthesizer, und auch 2 ENV Hüllkurven:

[CPCEmulator]https://youtu.be/QzyooJ6n_CE[/CPCEmulator]

Werde noch weiter dran rumbasteln. Mehr als 2 ENVs, dann noch ein paar ENTs, Rauschen usw. Und vielleicht PCM Drum Playback... mal sehen. Und zudem liegt hier noch die PlayCity...


LambdaMikel

OK, jetzt geht es auch mit USIfAC. Allerdings musste ich den PIC erst neu flashen.
Firmware Support für MIDI BAUD-Rate 31250 wurde auf meinen Hinweis / Kundenwunsch von @ikonsgr eingebaut.

[CPCEmulator]https://youtu.be/960FIh6B_3g[/CPCEmulator]

TFM

Ah, das Geheimnis sind die 31250 baud!!! Bisher haben das wohl nur LS3 und USIfAC.  :sign17:
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 24.12.2025)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)

LambdaMikel

Quote from: TFM on 22. August 2019, 18:44:27
Ah, das Geheimnis sind die 31250 baud!!! Bisher haben das wohl nur LS3 und USIfAC.  :sign17:

Wie, der CPC Booster kann das nicht? 
Normalerweise sagt ToTO doch immer das hat er alles schon vor 10 Jahren gemacht  :zunge0020:

TFM

Nein...

---------+---------+-------+------+-----+-----+-----+-----+
Baudraten!Schneider!Amstrad!      !     ! old ! CPC ! Mini!
Baudrates! Z80-STI !Z80-SIO!USIfAC! LS3 !Boost!Boos+!Boost!
---------+---------+-------+------+-----+-----+-----+-----+
-     45 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-     50 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-     75 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-    110 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-   134,5!         !   X   !   -  !  -  !  -  !  -  !  -  !
-    150 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-    200 !         !   X   !   -  !  -  !  -  !  -  !  -  !
-    300 !    X    !   X   !   X  !  -  !  -  !  -  !  -  !
-    600 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-   1200 !    X    !   X   !   -  !  -  !  -  !  -  !  -  !
-   1800 !         !   X   !   -  !  -  !  -  !  -  !  -  !
-   2000 !         !   X   !   -  !  -  !  -  !  -  !  -  !
-   2400 !    X    !   X   !   X  !  X  !  X  !  -  !  -  !
-   3600 !         !   X   !   -  !  -  !  X  !  X  !  X  !
-   4800 !    X    !   X   !   -  !  X  !  X  !  X  !  X  !
-   7200 !         !   X   !   -  !  -  !  X  !  X  !  X  !
*   9600 ! -- X -- ! - X - ! - X -!- X -!- X -!- X -!- X -!*
-  14400 !         !       !   -  !  X  !  X  !  X  !  X  !
*  19200 ! -- X -- ! - X - ! - X -!- X -!- X -!- X -!- X -!*
-  28800 !         !       !   -  !  X  !  X  !  X  !  X  !
-  31250 !         !       !   X  !  X  !  -  !  -  !  -  ! - Midi!
-  32000 !         !       !   -  !  -  !  X  !  -  !  -  !
-  36000 !         !       !   -  !  -  !  X  !  -  !  -  !
-  38400 !    X    !       !   X  !  X  !  X  !  X  !  X  !
-  43200 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
-  46080 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
-  48000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
-  57600 !    -    !   -   !   X  !  X  !  X  !  X  !  X  !
-  64000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
-  69120 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
-  72000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
-  76800 !    -    !   -   !   -  !  X  !  -  !  X  !  X  !
-  96000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
* 115200 !    -    !   -   ! - X -!- X -!- X -!- X -!- X -!#
- 138240 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
- 144000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
- 153600 !    -    !   -   !   -  !  -  !  -  !  X  !  X  !
- 172800 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
- 184320 !    -    !   -   !   -  !  -  !  -  !  -  !  X  !
- 192000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
- 208333 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
- 230400 !    -    !   -   !   X  !  -  !  -  !  X  !  X  !
- 250000 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
- 276480 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
- 288000 !    -    !   -   !   -  !  -  !  X  !  -  !  -  !
- 307200 !    -    !   -   !   -  !  -  !  -  !  -  !  X  !
- 312500 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
- 345600 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
- 416667 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
- 460800 !    -    !   -   !   X  !  -  !  -  !  X  !  X  !
- 576000 !    -    !   -   !   X  !  -  !  -  !  -  !  -  !
- 625000 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
- 691200 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
-1250000 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
-1382400 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
---------+---------+-------+------+-----+-----+-----+-----+
TFM of FutureSoft
http://www.futureos.de --> Das Betriebssystem FutureOS (Update: 24.12.2025)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)

LambdaMikel

Quote from: TFM on 22. August 2019, 18:53:31
Nein...

---------+---------+-------+------+-----+-----+-----+-----+
Baudraten!Schneider!Amstrad!      !     ! old ! CPC ! Mini!
Baudrates! Z80-STI !Z80-SIO!USIfAC! LS3 !Boost!Boos+!Boost!
---------+---------+-------+------+-----+-----+-----+-----+
...
-1250000 !    -    !   -   !   -  !  X  !  -  !  -  !  -  !
-1382400 !    -    !   -   !   -  !  -  !  -  !  X  !  -  !
---------+---------+-------+------+-----+-----+-----+-----+


1250000 is bei LS3 uebrigens rausgeflogen.