Istnieje utwór napisany na 2x ZX Spectrum. Jeden komputer gra digi, drugi soundtracker. Próbuję to uruchomić na jednym w schemacie TurboSound (AY przełączany OUT 65533,254 i 255).
Player Soundtracker jest załadowany na ekran, od 16384. Po uruchomieniu widać, że chodzi na przerwaniach digi playera.
Digi tracker też używa przerwań, skok do STC znajduje się pod koniec obsługi przerwania. (załączniki -c.sna i -c.asm)
Po załadowaniu do emulatora oba grają, ale bardzo nieciekawie. Sprawdzałem na pojedynczym AY. Nie znam emulatora który obsługuje turbo i byłbym pewien, że w tym samym schemacie.
Dołączam 2 snapshoty - z oryginalną muzyką i z podmienionym na inny utworem dla STC. Ten drugi tylko dlatego, że jest krótszy i nie ładuje się na zmienne systemowe ani na Basic, ale to całkiem inny utwór.
Teraz próba zrobienia pliku .ay z tego kodu i gra okropnie (sprawdzałem w Modo, ktory obsługuje turbo)
Gdzie tkwi problem? Nie wyrabia z przerwaniem?
Stos jest ustawiony na 65500. Może tutaj coś jest nie tak?
Jeśli autor nie zrobił tego na jednym komputerze, choć mógł, wygląda że miał pomysł, ale ZX odmówił współpracy.
Zamiana chipów (pierwszy AY dla stc, drugi dla digi) nie dała nic.
W załączniku .zip pliki dla AY Maker. Różnica pomiędzy plikiem -c i -d to zamiana chipów.
Plik .ay dla każdego z utworów osobno nie ma najmniejszych problemów z zagraniem.