Autor Wątek: Jak przerobić muzyczkę PC Speaker na beep w ZX Spectrum  (Przeczytany 4567 razy)

Gelip

  • *****
  • Wiadomości: 765
    • Sysprep WinXP SP2 64-bit for pure UEFI with ACPI, AHCI, NVMe, USB 3.x
Niedawno na forum pisałem o sterowniku BEEPXP dla Windows Muzyka z PC speaker'a w którym umieściłem na YT wideo prezentujące możliwości tego sterownika - odgrywanie muzyczki za pomocą programu Bleeper Music Maker.
Program używa formatu plików .BMM. Interesuje mnie konkretna muzyczka (w podkatalogu music programu) Electro-Remi NOISE.BMM

Może jakoś wykorzystać opcje MIDI programu?

Ważne aby ten tryb Triplet dało się też zrobić - aby było to identycznie odtwarzane na ZX Spectrum
"Byte" Personal Computer
Брестское ПО средств вычислительной техники

Gelip

  • *****
  • Wiadomości: 765
    • Sysprep WinXP SP2 64-bit for pure UEFI with ACPI, AHCI, NVMe, USB 3.x
Odp: Jak przerobić muzyczkę PC Speaker na beep w ZX Spectrum
« Odpowiedź #1 dnia: 2022.06.17, 13:49:24 »
No i udało się z drobnymi problemami.

Najpierw chciałem odsłuchać tego na zewnętrznym keyboardzie MIDI. Podłączyłem więc kablem MIDI stary komputer z Win98 - kartę SoundBlaster AWE64 ISA do MIDI In klawiszy. Niestety program Bleeper Music Maker nie działa na Win98.
Zmieniłem więc komputer na inny stary PC z WinXP 32-bit ze zintegrowaną kartą dźwiękową Intel który ma wyjście GamePort. Niestety okazało się iż mam chyba uszkodony ten port bo pliki MIDI nie są odtwarzane (wysyłane do klawiszy).

Wziąłem więc jeszcze inny stary PC z WinXP 32-bit który ma dwie karty dźwiękowe - zintegrowaną i PCI SoundBlaster 128. Sprawdziłem czy port na zintegrowanej działa odtwarzając dowolny plik MIDI Winamp'em. Niestety okazało się iż w programie BMM mimo iż da się wybrać port MPU-401 dane MIDI nie są wysyłane przez ten port.

Na szczęście okazało się iż z gameportem na karcie PCI wszystko działa jak należy  :)
  • zainstalowałem więc program MIDIYoke, który tworzy wirtualne urządzenia MIDI
  • w BMM otworzyłem muzyczkę, wybrałem Mute PC speaker oraz Use MIDI Out i urządzenie Out To MIDI Yoke: 1, kanał 1, Instrument 88 - Lead 8 (Bass + Lead)
  • odpaliłem program sekwenserowy Magix Music Studio i w urządzeniach wejściowych wybrałem to samo urządzenie jako wejście danych MIDI - In From MIDI Yoke: 1 po czym włączyłem nagrywanie na kanale pierwszym MIDI i odtwarzanie w BMM - tak konwertowałem do formatu MIDI nazywając plik NOISE.MID
  • teraz wystarczy użyć programów Mid2ASM.exe i midi2ay.exe i mam co chciałem
Nie wiem czemu ale najlepiej wyszło to na AY programem midi2ay - plik NOISE.tap.
Beeper gra w miarę OK ale tylko po konwersji do pliku NOISE_ASM.Tap - dane binarne. Natomiast po konwersji do formatu BASIC - plik NOISE_BAS.Tap jest do du.y  :-\

Wszystkie pliki w załączniku.
"Byte" Personal Computer
Брестское ПО средств вычислительной техники

Gelip

  • *****
  • Wiadomości: 765
    • Sysprep WinXP SP2 64-bit for pure UEFI with ACPI, AHCI, NVMe, USB 3.x
Odp: Jak przerobić muzyczkę PC Speaker na beep w ZX Spectrum
« Odpowiedź #2 dnia: 2022.06.22, 06:43:27 »
Jednak zastanawia mnie jedna rzecz. Wersja na BEEP jest odtwarzana źle. Czy BEEP ZX Spectrum jest gorszy niż PC Speaker? Format programu Bleeper Music Maker to zwykły plik tekstowy. Może dało by się wykorzystać Beepola lub Vortex Player na PC lub Pro Tracker na ZX Spectrum zamiast konwertować na MIDI i z MIDI na ZX? Tak wygląda kawałek pliku bmm:
1/16 C1 - -
1/16 C1 - -
1/16 C1 - -
1/16 C1 - -
1/16 C1 - -
1/16 C1 - -
1/16 C1 - -
1/8 C3 - -
1/8 - - -
1/8 C3 - -
1/8 - - -
1/16 C6 - Tri
1/16 B5 - Tri
1/16 A5 - Tri
1/16 G5 - Tri
1/16 F5 - Tri
1/16 E5 - Tri
1/16 D5 - Tri
1/16 C5 - Tri
1/16 B4 - Tri
1/16 - - -
1/8 C3 - -
1/8 - - -
1/8 C3 - -
1/8 - - -
1/8 C3 - -

Chciałbym posłuchać tej muzyczki w niezmienionej formie na beeperze ZX Spectrum a nie na AY.

Da się jakoś to konwertować na format trackera bez ręcznego wpisywania bo trochę tego jest aby wklepywać to ręcznie?
« Ostatnia zmiana: 2022.06.22, 07:27:24 wysłana przez Gelip »
"Byte" Personal Computer
Брестское ПО средств вычислительной техники

steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
Odp: Jak przerobić muzyczkę PC Speaker na beep w ZX Spectrum
« Odpowiedź #3 dnia: 2022.06.22, 08:34:27 »
1tracker też zapisuje w formacie tekstowym, może tu byłoby łatwiej...
Machines should work. People should think.

Gelip

  • *****
  • Wiadomości: 765
    • Sysprep WinXP SP2 64-bit for pure UEFI with ACPI, AHCI, NVMe, USB 3.x
Odp: Jak przerobić muzyczkę PC Speaker na beep w ZX Spectrum
« Odpowiedź #4 dnia: 2022.06.24, 07:34:46 »
Udało mi się zrobić plik .AY z pliku NOISE.tap za pomocą programu AYmakeR po wcześniejszym wypakowaniu danych muzycznych .bin za pomocą ZX-Blockeditor. Teraz kombinuję może da się konwertować AY na ZX Spectrum BEEP ?
"Byte" Personal Computer
Брестское ПО средств вычислительной техники