++ ++ -+- +--+ +--+ +--+ |+++| | | | | | | | | | | | +--+ +--+ + + -+- +--+ + + +--+ Sound System by Sahara Surfers Jedna věc mě na demoscéně vždycky nějak iritovala, a to podpora zvukových karet. Za časů, kdy jsem žil ještě v blahém domnění, že Sound Blaster 16 je to nejlepší, co se dá do počítače zastrčit, jsem se začal pomalu, ale jistě seznamovat s demoscénou a jaké bylo mé veliké zklamání ? Žádný Sound Blaster, ale GUS only ! Jakožto majitel SB, jehož originální název bezcitní majitelé božského Gravise předělávali na velice hanlivé patvary typu Shit Bluster nebo Suck Buuster, jsem existenci tohoto dilema nesl dosti těžce a mým snem se stal GUS. Teď už mohu říci, že oni bezcitní gravisaci měli v podstatě pravdu, i když starý dobrý SB není také k zahození, protože nesmíme zapomenout na skvělou FM syntézu ! Jsem tedy majitelem jak GUSe, tak SB16 a můžu říct, že jsem, co se týče hudebního výstupu, plně spokojen. Ale každý není zas takový fanda do muziky, aby si pořídit hned dvě relativně drahé zvukovky a proto je stále třeba myslet i na uživatele jiných karet, než je zrovna božský GUS. Programátoři řeší tento hardwarový problém mnoha způsoby. Někdo se na Sound Blasterské klony vykašle a jede rovnou GUS only, což je například u 64kB inter pochopitelné, ale i tak se mi to zdá poněkud přehnané. Druzí si spachtí mixák sami, ve většině případů je podpora GUS výborná (karta udělá skoro všechno za ně), ale co se týče SB, škoda mluvit. Jsou zde samozřejmě výjimky, ale je jich opravdu málo. Podle mého názoru existuje lepší řešení: MIDAS. Vytvořit něco jako MIDAS stálo určitě hodně úsilí a času, ale výsledek stojí zato. To, co by měl teoreticky zvládat operační systém (viz. NexTStep), si museli democodeři naprogramovat sami. Dle mého názoru je filozofie MIDASe více než jasná: stejně jako když čteme data z disku přes funkce DOSu, tak podobně přehráváme hudbu přes MIDAS. Má to nesporné výhody: můžete se spolehnout, že pokud vám po hudební stránce funguje jeden program s podporou MIDASe, budou vám fungovat i všechny ostatní, odpadá tím starost s úmorným setupováním zvukovky a paměťových ovladačů, vše je standardizováno. Aby se takovýto systém ujal, musí splňovat všechna tvrdá kritéria, které programátoři na mixovací a přehrávací hudební systémy kladou. Jednak by měl být velice dobře naprogramovaný, alespoň z 90% stabilní a měl by splňovat základní programátorský komfort jehož součástí je také dobrá návaznost pro případné úpravy a vylepšení. Tyto všechny vlastnosti MIDAS splňuje a má jich ještě mnohem více. Podporuje standardní moduly typu MOD, S3M, XM, což, až na některé vyjímky, bohatě postačuje. Jediný nedostatek, který je mu třeba vytknout, je specializace na Watcom C++ s DOS4GW/PMODE extenderem, což je pro nás Pascalisty nemilá záležitost, i když co můžeme dělat, Borlandi se na nás vykašlali a přešli kompletně na Wokna a nějaké zdokonalovaní kompilátoru starého Borland Pascalu směrem k plně 32-bitovému generátoru pro DOS je ani nenapadlo a tak nám zbývají jen oči pro pláč a MIDAS verze 0.4, který jako jediný byl ještě dodáván jak v C, tak v PAS podobě, kdy se ještě s XM nepočítalo. Je jasné, že další verze, které už XM naloadit umí, se pro Pascal nešíří, jelikož není co, vzhledem k nulové podpoře reálného 32-bitového protected módu v poslední verzi BP7.01. A tak zůstáváme u 0.4, která umí aspoň ty S3M a MOD. Je to škoda, Pascal je perfektní jazyk. Kdyby si přebral pár užitečných vlastností od svého konkurenta C++, určitě by nebyl k zahození, ale v současné době k zahození bohužel je. Nebudu se teď ale zabývat kvalitou jednotlivých kompilátorů nýbrž přestoupím k věci, proč vlastně tento článek píšu. Chtěl bych pro ty, kteří s MIDASem ještě nedělali nebo to jen tak zkoušeli a nějak jim to zrovna moc nešlo, ukázat, jak takový jednoduchý přehrávač modulů pomocí MIDASe naprogramovat. Pokud by zde byl zájem o osvětlení dalších funkcí MIDASe, jako například synchronizace timeru s paprskem nebo informace o pozici, která se právě přehrává, důležitá to věcička pro synchronizaci efektů s hudbou atp., jsem ochoten pokračovat dalšími články v následujících Výhních. Stačí jen napsat, co by vás ohledně MIDASe zajímalo a já se to pak pokusím zesumarizovat a to, co budu vědět, se pokusím vysvětlit. Program pro přehrávaní modulů pomocí MIDASe ReDox výheň