Opis programu PRG 2 SID converter

Łukasz 'Luc' Sanecki

Tutaj znajduje się opis malutkiego programu PRG2SID. Małego, a jakże fajnego i dającego wiele radości ludziom chcącym z niego korzystać. Od razu uprzedzam, że aby móc obsłużyć dobrze ten programik (a właściwie wprowadzić prawidłowo dane), trzeba trochę znać samego Commodore 64 - Basic i może trochę Monitor. A więc jeśli raczej używasz tylko emulatora C64, to raczej nie uda Ci się z sukcesem zrozumieć tego programu. Ale spróbować zawsze możesz...

DO PRZEPROWADZENIA KONWERSJI POTRZEBNE BĘDĄ PROGRAMY:
SIDPLAY, PRG2SID, STAR COMMANDER, EMULATOR C64 (CCS64 V2.0)
(wszystkie programy są dostępne na tej stronie w dziale Download)

Program Prg to Sid Converter został napisany w systemie DOS przez Quazza w 1999. roku. Co on potrafi robić? Otóż ma on jedną, ale bardzo ważną możliwość przenoszenia plików muzycznych z normalnego Commodore 64 na format pliku, które odczytuje program SidPlay (z rozszerzeniem .sid itp.). Poniżej znajduje się opis, jak taką operację przeprowadzić na emulatorze CCS64 v2.0. Jeszcze raz zwracam uwagę, że osoby nie znające się chociaż troszkę na C64 mogą sobie nie poradzić. No to Start!

Szukanie utworów muzycznych

Pierwszą rzeczą, jaką należy wiedzieć to to , że muzyczki do C64 (od teraz będę je nazywał "zakami") są napisane przeważnie w specjalnych programach do tego przeznaczonych (jak np. Hardtrack, Voicetracker czy DMC), tak jak na innych komputerach. Mają one więc swój format. Do ich odtwarzania potrzebne są tzw. playery (napisane w Assemblerze). C64 ma pamięć wyrażaną w liczbach/komórkach od $0000 do $FFFF. Przeważnie muzyczki rozpoczynają się w adresie $1000 i kończą przed $2000, ewentualnie mogą być do $2800 lub jeszcze dłuższe. Ja osobiście potrafię przetworzyć na format programu SidPlay tylko muzyczki zaczynające się od $1000 i tylko takie przypadki tu opiszę. Może więc już opiszę, w jaki sposób można taką muzyczkę przenieść.

1. Wpierw musimy oczywiście wiedzieć, jaką muzysię chcemy przetworzyć na format czytany przez PC-ta. Wymagany jest zatem posiadane jakieś demo, magazyn lub przede wszystkim kolekcja muzyczna. Jeżeli już coś takiego mamy, proponuję zaopatrzyć się w kartridż (wirtualny oczywiście) do C64 - najlepiej Action Replay z Monitorem (powinien być tu do ściągnięcia w artykule z opisem kart'a Action Replay). Gdy już go mamy, musimy go uaktywnić, aby emulator automatycznie go ładował przy starcie (jak to zrobić jest napisane w opisie emulatora CCS64 "jak wkładać kartridże").

2. Gdy już to jest załatwione (kartridż się włącza przy starcie czy resecie C64), ładujemy dany program z muzyczką i gdy będziemy ją słyszeć, proponuję, aby wcisnąć klawisz F9 i przejść do opcji Machine Code Monitor, czyli po prostu monitora (może on pokazywać m.in. obszary pamięci). Gdy pojawi się ekran, wpisujemy:

I1000 (i, jeden zero zero zero)

...i wciskamy Enter. Możemy poruszać kursorami w dół, aby zobaczyć, czy obszar przeglądany właśnie jest muzyczką. Tu właśnie potrzebna jest znajomość C64, gdyż człowiek znający C64 pozna, czy jest tam muzyczka, czy też nie. Przeważnie w linii $1020 (następna linia po $1000) jest informacja o autorze muzyczki - wtedy niemal pewni możemy być, że "coś" tam jest. Wychodzimy z Monitora (wciskaj klawisz Escape aż nie powrócisz do C64). Jeżeli w linii $1000 nie znalazłeś(aś) muzyczki, przeskocz do punktu [3A], jeśli natomiast podejrzewasz, że takowa się tam znajduje, do punktu [3B].

3A. Nie ma muzyczki w pamięci? Trudno - nie da się jej przekonwertować! Ale nie poddawaj się! Wgraj innego fajnego zaka i spróbuj od początku! Jeśli nie teraz, to po kilku próbach powinno coś się znaleźć...

3B. Brawo! Masz już raczej na pewno muzyczkę! Teraz, gdy muzyczka jest odgrywana, naciśnij ALT+S (soft reset). Nasz C64 się zrestartuje i przejdzie do Basica (jeśli masz Action Replay'a, to na ekranie startowym naciśnij F7). Jesteś teraz w Basic'u. Naciśnij klawisz F8 (lub F2 - w zależności od wersji kartridża). Pojawia się Monitor z komunikatem gotowości:

B*______PC___NMI__SR AC XR YR SP NV#BDIZC
.;______0401 FE47 32 04 5E 00 F6 ..**..*.

.;

Przenieśmy się teraz do adresu $1000 pisząc:
.I*1000

Monitor pokaże nam tą linię. Spróbujmy teraz określić, ile miejsca w pamięci zajmuje dany zak. Napiszmy więc

.I*1000-

Monitor wylistuje linie od $1000 wzwyż, czyli do $2000, $3000 itd. Podczas pokazywania linii możemy przytrzymać klawisz Control (na klawiaturze PC klawisz TAB), aby zwolnić wyświetlanie. Szukajmy, gdzie kończy się zak, aby do danego miejsca go zapisać. Powinien kończyć się w okolicach $1C00, $2000, $2800 (trzeba to samemu odnaleźć!). Po znalezieniu linii końcowej, wiemy już, że nasz zak zajmuje miejsce w pamięci przykładowo od $1000 do $1FFF (17 bloków na dysku C64). Musimy go więc teraz osobno zapisać! Jak to zrobić? Już piszę! Oczywiście wciąż jesteśmy w Monitorze!

a) Najpierw musimy stworzyć nowy dysk (wirtualny) do C64. Wchodzimy więc do menu (klawisz F9), wybieramy Load File i w katalogach zjeżdżamy na sam dół, aż do pozycji DIR (...). Wtedy u dołu ekranu powinny być dwie pozycje: Make New D64 i Make New G41. Wybieramy tą pierwszą, czyli tworzymy dysk D64. Wpisujemy nazwę i dysk gotowy. Wchodzimy do jego katalogu i wybieramy Select Disk. Automatycznie powracamy do C64.

b) Musimy go teraz sformatować. Wpisujemy więc

.@n:nazwa dysku,id dysku (2 znaki max.)

Wciskamy Enter, komputer spyta, czy aby na pewno chcemy to zrobić. Wpisujemy Y (Yes - tak) i wciskamy jeszcze raz Enter. Po chwili będziemy mieli gotowy dysk.

c) Teraz możemy już zapisać gotową muzyczkę. Wpisujemy zatem

.s"nazwa muzyczki (max.16 znaków)",08,1000,1FFFF (w zależności od długości zaka wpisujemy inne dane w pole $1000 i $1FFF). Potwierdzamy Enterem i po chwili zak jest zapisany! Połowa roboty za nami!

Konwertowanie utworów muzycznych

Mamy już zapisaną muzyczkę na dysku .d64. Możemy teraz wyjść z emulatora (Quit CCS64). Uruchamiamy teraz (wcześniej ściągnięty mam nadzieję) program Star Commander. Uruchamiamy go poprzez plik Scmain.exe. Pojawi się ekran podobny do Norton Commandera. Szukamy teraz katalogu, w którym zapisaliśmy nasz dysk nazwa.d64. Po znalezieniu go, wchodzimy do niego. W środku tej dyskietki (w katalogu) powinny być zapisane wcześniej przez nas muzyczki do C64. Zaznaczamy je (klawiszem Insert lub prawym klawiszem myszki). Teraz musimy je przekopiować. Wciskamy klawisz F5 (copy). Pojawi się okienko:

C:\jakis katalog\ ... zaznaczamy X-Extract PC64 file images i wciskamy COPY

Zaznaczamy "Extract PC64 file images", wybieramy docelowy katalog (gdzie maja byc przekonwertowane pliki) i wciskamy "Copy". Jeśli jest to więcej niż jeden plik, program będzie pytał, czy każdy plik przekonwertować. Wybieramy OK lub od razu ALL (wszystkie pliki). Po chwili pliki juz beda w naszym katalogu Windowsowym... Ale to jeszcze nie koniec, bowiem pliki przekonwertowane są dopiero na format .prg. Teraz dopiero uruchamiamy program Prg2Sid. Powinien on być uruchomiony najlepiej z "czystego" DOSa. Może być oczywiście też w Windowsie...

A więc tak: po uruchomieniu musimy odnaleźć plik z naszym rozszerzeniem teraz .prg (np. zak.prg) i wpisać:

>prg2sid nazwa.prg (gdzie nazwa.prg to oczywiście nasza nazwa)

Powinien pojawić się ekran:

Ekran: init address: 1000 [hex] 4096 [dec] - ustawiamy po kolei różne atrybuty

Program będzie wymagał podania adresu startowego zaka. Ustawiamy więc adres 1000 (czyli 4096). Można to regulować przy pomocy klawiszy + - * /. Potwierdzamy Enterem i program teraz pyta o adres, przez który zak ma być odgrywany (play). Wpisujemy 1003 (4099). Regulacja adresów jak wcześniej. Potwierdzamy Enterem. Teraz program pyta o ilość utworów, jaka znajduje się w danym pliku. Z reguły jest tylko jeden, więc wpisujemy "1" i wciskamy Enter. Teraz mamy pytanie, od którego zaka komputer ma zaczynać odgrywanie. O ile mamy tylko jedną muzyczkę, wpisujemy 1. Jeśli jest ich więcej, możemy wpisać inną liczbę (wtedy komputer zamiast od 1. muzyczki może np. zacząć odgrywanie powiedzmy od 3.). Wciskamy Enter. Teraz możemy wpisać tytuł utworu (jeśli go znamy), potem autora i prawa autorskie (copyright). Jeśli to już wpiszemy, program się wyłącza i mamy gotową muzyczkę!!! Sprawdź teraz, czy nasz zak.sid działa poprzez program SidPlay! To wszystko! Z pozoru to wszystko wygląda na strasznie długą i skomplikowaną operację, ale trochę wprawy i będzie to zajmowało niecałe dwie minutki! Jeśli czegoś nie zrozumiałeś, drogi Czytelniku, masz jakieś pytania, to pisz do mnie! Postaram się wszystko dokładnie wyjaśnić!

 © 1999-2020 Wszystkie prawa zastrzeżone
 Webmaster: Mariusz "Flooder" Młynek