home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / sound / paula22a / doc / paula_e.doc < prev   
Text File  |  1993-02-20  |  38KB  |  965 lines

  1. 064020303000000128004006006000000
  2. 1PAULA 2.1 Modfile Player0
  3. 2Seite #0
  4. F0110000001
  5. R   [.◆....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆...]0110
  6. 9[...◆.◆...◆◆..◆.....◆....◆.◆..◆....◆....◆....◆....◆....◆....◆....◆.]0110
  7. Ç
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. üëPAULA][
  15.  
  16. ü(Paula,taketwo!)
  17. ë
  18.  
  19.  
  20.  
  21.  
  22.  
  23. ÇYetanotherAmiga-MODfile-Player
  24. fortheAtariTT&STE
  25.  
  26. Version2.2a
  27. 20-Feb-93
  28.  
  29.  
  30.  
  31. Sharewareby
  32. PascalFellerich
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41. ëShareware:
  42. Ç
  43. Startingwithversion2.0Paulaisshareware.Thatmeansthat
  44. youmaydistributeandtestthissoftwarefreely.Butifyou
  45. useitregularlyyouhavetoregister.Unregisteredcopiesof
  46. Paulawillremindyousometimestodoso.Moreoverthese
  47. unregisteredcopieswillneverbe'better'thantheoriginal
  48. v2.0;newfeaturesaredisabled.Forthemomentthesearethe
  49. autoloadfunctionandthesupportforpackedmodules.
  50.  
  51. ♪③AtthebeginningPaulawasalittleutilitytoplaymodfiles
  52. whichIwroteinsomeweeks.Asthereactionsonthislittle
  53. pieceofsoftwarewereverypositive,Idecidedtorewritethe
  54. playercompletelywhichmadeitpossibletointegratemanynew
  55. features.Paulahasbecomearealpowerfulprogramwhichhasno
  56. equivalentuntilnow.SoIdecidedtoreleaseitasshareware.
  57. You'llfinddetailsintheparagraphentitled'Registration
  58. Procedure'onpage11.
  59.  
  60. ♪②Thefollowingfilesarepartofthe'PAULA'-packageandmust
  61. remainunchangedandbedistributedtogether:
  62.  
  63.       ê1.ÇêPAULA.APPÇ-Themainprogram(alternativenamesare
  64. PAULA.ACCorPAULA.PRG)
  65.       ê2.ÇêPAULA_D.TXTÇ    -thegermanmanual
  66.       ê3.ÇêPAULA_E.TXTÇ    -theenglishmanual
  67.       ê4.Ç  êMP.TTPÇ         -ModPlay:alittleutilitytoplaymodules
  68. evenfromCLI's
  69.       ê5.Ç  êMP.CÇ           -thesourcecodeofModPlay.
  70.       ê6.Ç  êCHECKMOD.TTPÇ   -ChecksifamoduleisOKandrepairs
  71. corruptedmodfilesasfarasthisis
  72. possible.
  73.  
  74. ♪②Thefile'PAULA.INF'êmustnotbegivenawayÇasthisfile
  75. containsyourregistrationdata.
  76.  
  77. ♪②PaulamaybedistributedviaBBSandon'PublicDomain'disks;
  78. howeverthesharewarestatusofthissoftwareisnotaffected!
  79.  
  80. ♪①AllrightsreservedbyP.Fellerich.
  81.  
  82. ♪⑧    Myaddress:            PascalFellerich
  83.                            45,ruedesGenets
  84.                            L-3482Dudelange
  85.                            (Luxembourg)
  86.  
  87.     Postalchequeaccount: CCP65407-29
  88.  
  89.     E-Mail:                2:270/16.3@fidonet
  90.  
  91. ♪③ThelatestreleasesofPaulaareavailableinthefollowingBBS
  92. (inLuxembourg,don'tforgettherightdialingprefix)underthe
  93. nameof'PAULA2*.LZH':
  94. ♪√Ç      NoNameBox #1      595243,300-14400BpsUSRDS,V.32b
  95.                                    (Fidonet2:270/16)
  96.       NoNameBox#2      596213,300-16800BpsZyX,V.32b
  97.                                    (Fidonet2:270/14)
  98.       ComNet (line1)  466893,300-14400BpsUSRDS,V.32b
  99.               (line2)467516,300-14400BpsUSR,HST
  100.               (line3)   222534, 9600-14400BpsUSRDS,V.32b
  101.  
  102.  
  103.  
  104.  
  105. ♪⑥ëWhyPaula?
  106. Ç
  107. Paulaplaystheso-called'modfiles'usingtheSTE/TTPCMsound
  108. chip.Thesemodfiles,alsocalled'modules',originatefromthe
  109. Amigawhichhasaspecialfour-channelPCMsoundchipcalled
  110. 'Paula'.
  111.  
  112. ♪④Pauladoesn'tclaimtobetheonlyorthefastestmodplayer
  113. availablefortheAtari,butithasauniquecombinationofa
  114. perfectGEMuserinterfaceandacollectionofsuperfluous
  115. features...
  116.  
  117.  
  118.  
  119.  
  120. ♪④ëWhatdoesPaula?
  121. Ç
  122. Toavoidaratherlengthydescription,hereisashortlist
  123. withPaula'sfeatures:
  124.  
  125.  
  126. ♪ê1.Internal:
  127. Ç
  128. *CompatibletoreallyallMOD-formats,rangingfromtheold
  129. SoundtrackerformattothenewProtrackerformat.
  130.  
  131. *Threesamplingfrequenciesareavailable:12.5,25,50KHz
  132. (whenusingPaulaonST'swithalittlehelpfromthesound-
  133. driver'PETRA'it's6,9.6and12KHz).
  134.  
  135. *Linearinterpolationoptiongivingagreatimprovementin
  136. soundquality.
  137.  
  138. *Boosteroption,risingtheS/Nratioby6dB.
  139.  
  140. *Completelyindependentpitchandspeedtuning.
  141.  
  142.     *SupportsLZ5orAFXpackedmodules.
  143.  
  144.  
  145. ♪≈Çê2.GEM&Co-theuserinterface:
  146. Ç
  147. *RealGEM-consequentlyitwillrunonanyTOS-machine.This
  148. alsoincludesAtari'snewMultiTOS.
  149.  
  150. *Simpleandintuitivecontrol
  151.  
  152. *SupportsextendedselectionfeaturesofSelectric™andGemini
  153.  
  154. *'Programmable'likeasimpleCDplayer
  155.  
  156. *Random:randomplayofseveralmodules.
  157.  
  158. ♪②*Repeat-switch:onemoduleorawholeselectionmayberepeated
  159. indefinitely
  160.  
  161. *CPULoadandpositiondisplay
  162.  
  163.  
  164.  
  165.  
  166. ♪⑤ëHowitbegan...
  167. Ç
  168. WhenIgotmyTTIwantedtohearthenewsoundchip.SoI
  169. downloadedsomemodplayersfortheSTEandtriedthem.
  170. Unfortunatelymostofthemcrashed,andthosewhichranonthe
  171. 68030produced'lo-fi'(lowfidelity)sound.SoIhadtowritea
  172. playeronmyown.Butthatwaseasiersaidthandone-Ihadto
  173. acquiretheknowledgeofthe'real'PAULA-chipintheAmigaand
  174. ofcourseoftheSTE/TTsoundhardwaresimplybecauseIwanted
  175. toportanoldreplayroutinefromtheAmiga(D.O.C.
  176. replayroutine2.0fromjune1986).SomeweekslaterPaula1.0
  177. was'upandrunning'.Thisreleasewasstillbuggyandhad
  178. limitedcapacitiesbutitfinallyworkedfineontheTT.After
  179. severaloptimizationsandimprovementsIconcludedthe
  180. developmentatv1.5.
  181.  
  182. ♪③Inapril92adiscussioninthefidonetBBSre-ignitedthe
  183. globalinterestinthemoduleplayer,andIdecidedtocontinue
  184. thedevelopment.Theversions1.7and1.8werereleased.Inthe
  185. meantime,thesoundqualitywasgreatlyenhancedbutstillthe
  186. userinterfacewaslousy.SoIrewrotethewholething-that's
  187. it...
  188. ë
  189.  
  190.  
  191.  
  192. ♪④Systemrequirements:
  193. Ç
  194. PaularunsonallTOS-basedmachine(>=TOS1.4)havingaSTE
  195. compatiblePCMsoundchip...orthesounddriverêPETRAÇ!
  196.  
  197. ♪③However,onlythefastermachinesallowdecentbackgrouduseof
  198. Paula;anormalSTErunningat8MHzwon'tdo25KHzsampling
  199. frequency.AMegaSTEat16MHzisfine,aTTisbetter.
  200. TobeabletorunPaulaonST'swithoutthePCMsoundchipyou
  201. ÇneedPETRA-asounddriver(shareware,too)forPaulaby
  202. ChristianLimpach.
  203. ë
  204.  
  205.  
  206.  
  207. ♪④Installation:
  208. Ç
  209. Paulamayrunasanaccessoryorasanapplication.Withnormal
  210. TOSversionstheaccessorymodeisuseful,underMultiTOSyou
  211. mayfinditbettertouseitasaprogram.Ofcourseyoumayuse
  212. 'theChameleon'(oranyothergoodaccessoryloader)toloadthe
  213. ACC.
  214.  
  215. ♪③WhenusingMultiTOSyoumayrunPaulaasanormalprogram;but
  216. thenyoumaynotcloseit'smainwindowwithoutleavingthe
  217. program!
  218. ë
  219. ♪③ÇAnotherusefulthingisXCONTROL-youshouldhaveinstalledthe
  220. 'SOUND'cpx-modulesothatyoucanchangethevolume,treble,
  221. bassandbalance.Moreoveryoushouldconnectyourcomputerto
  222. yourstereoequipment(viatheRCAjacks)togetthebest
  223. possiblesound.
  224. ë
  225.  
  226.  
  227.  
  228. ♪④User'sGuide:
  229. Ç
  230. AfteryouhavelaunchedPaulayougetawindowcontainingthe
  231. maindialog.Thisoneissubdividedinto6areas:
  232. 1.theinfoline
  233. 2.thePlayer&SoundSetup
  234. 3.SampleFreq
  235. 4.CPULoad
  236. 5.Position
  237. 6.theplayer'scontrolkeys
  238.  
  239.  
  240.  
  241.  
  242. ♪⑤ëThecontrolkeys
  243. Ç
  244. Thesecontrolsarehopefullythesimplest.Theycarrythe
  245. commonlyusedsymbolsyoualsofindonacassettetape
  246. recorder,soyoushouldbefamiliarwiththose.Notethatevery
  247. keyismarkedwithalittleletterintheupperleftcorner-
  248. that'sthekeyboardshortcut.Press'L'toëLÇoadafile.
  249.  
  250. ♪③êLOAD:ÇFirstyoumustloadamodule.WhenyouclickontheLOAD-
  251. buttonyougetthefileselectorinordertoselectamodule.On
  252. 'OK'Paulaimmediatelyloadsthemodule.Ifthisoperationwas
  253. successfultheinfolineofthewindowwillshowthetext
  254. 'Stopped:<modfilename>'.Ifanerroroccurredyouwillbe
  255. informedbyastandardalertbox.
  256. ♪²ÇIfyouhaveinstalled'Selectric™'asafileselector,youmay
  257. alsospecifymorethanonemodule!
  258. NOTE:Paulaonlyloadsuncompressedmodules.
  259. ê
  260. ♪③ÇêSTOP:ÇWell,thisonestopsamoduleandresetstheplayer.This
  261. alsoclearsPaula'smemory-ifyouhadselectedseveralmodules
  262. Paulawillforgetthem.Theinfobarshows'Stopped:...'.
  263. Inaccessorymode,closingthewindowinthestoppedstatealso
  264. releasesthememoryallocatedforthelastloadedmodule.
  265.  
  266. ♪③êPLAY:ÇStartstheplayer.Ifyouhaven'tselectedamodulePaula
  267. willpromptyoutodoso.Ifyoupress'PLAY'whenPaulaisbusy
  268. playingoneofseveralmodulesitwillskiptothenextmodule.
  269. (Skipfunction).
  270.  
  271. ♪③êPAUSE:ÇStopstheplayertemporarily.Theplayerisnotreset!In
  272. thatstateyoumayalsoquittheaccessory(closethewindow)
  273. withoutlosingthecurrentmodule.Tocontinue,pressPAUSEor
  274. PLAY.
  275.  
  276. ♪③êREW:Ç(REWIND)Jumpstothepreviouspositioninthemodule.
  277. ThisfunctionworksonlyifPaulaisinthe'playing'or
  278. 'paused'state.
  279.  
  280. ♪②êFF:Ç(FASTFORWARD)Jumpstothenextpositioninthemodule.
  281. Thisfunctiontooonlyworksinplay-orpause-mode.
  282.  
  283. ♪②ê!:Ç(Exclamationsign)InvokestheSETUP-dialogwhichoffers
  284. somemorefunctionslikepitchandspeedtuning.
  285.  
  286. ♪④ê?:Ç(Questionmark)SomegeneralinformationsaboutPaula.
  287. Throughthisdialogyoualsogettheregistrationdialog.Howto
  288. registerisdescribedsomepageslater(title:Registration
  289. procedure)
  290.  
  291. ♪③Trytofamiliarizeyourselfwiththesecommandsbysimplytrying
  292. themout!Whateveryoudo,youwillnotsuccedincrashing
  293. Paula-evennotonmachineswithmemoryprotection.
  294. ë
  295.  
  296.  
  297.  
  298. ♪⑤Theinfoline
  299. Ç
  300. Paulausestheinfolineofthewindowtodisplayit'scurrent
  301. statusaswellasthetitleofthecurrentyloadedmodule.
  302. Currentlyfourstatesaredefined:
  303.  
  304. ♪④êInactive:ÇPauladoesnothing.Nofileisloadedandnomemory
  305. isallocated.WhenyouchangeresolutionsPaulashould
  306. preferablybeinthismodetoavoidmemorylossorsystem
  307. crashes.
  308.  
  309. ♪③êStopped:ÇPaulahasloadedamodule.Ifyouchangeresolution
  310. nowyouwilllosetheallocatedmemorybecauseyoudidn'tgive
  311. Paulaachancetoreleaseit.
  312. Ç
  313. ♪②êPaused:ÇPaulaiswaitingtocontinue.TheFFandREWbuttons
  314. work.
  315.  
  316. ♪④êPlaying:ÇPaulaisbusy-don'tyouhearthat?Ifanotherprogram
  317. accessesthesoundhardwarePaulaisstopped,ofcourse.Butas
  318. soonasthesoundchipgetsfreedPaulatriestocontinue,which
  319. maytakeupto1second.Ifnot,thisisabugandshouldbe
  320. reported.Howeveryoumaymanuallyrelaunchtheplayerby
  321. pressingthePAUSE-buttontwice.
  322. ë
  323.  
  324.  
  325.  
  326. ♪④SampleFreq
  327. Ç
  328. YoumaychoosethesamplingfrequencyusedbyPaula.Currently
  329. therearethreepossibilities:12.5,25and50KHz.Thehigher
  330. thesamplingfrequencythebetterthehighfrequencyresponse.
  331. Theoreticallythehighestsoundfrequencyishalfthevalueof
  332. thesamplingfrequency(cfShannon'ssamplingtheorem).Onthe
  333. Atarihardwareit'sabout40%ofthesamplingfrequency.When
  334. using25KHzsamplefreqyougetupto10KHzsoundfrequency.
  335. Changesinthesamplingfrequencyareimmediatelyeffective.
  336. Duringtheswitchingthesoundismutedforaveryshortmoment
  337. toavoidchirpingandclicknoises.
  338. ë
  339.  
  340.  
  341.  
  342. ♪⑤Player&SoundSetup
  343. Ç
  344. Inthatareayoufindtwotypesofswitches:
  345. *switchestoinfluencethesoundsynthesizer
  346. *switchestochangethereplaymodi
  347.  
  348. ♪③êInterpolate:ÇEnablestherealtimeinterpolationofthesamples.
  349. Thisgivesamuchbettersoundqualitybutitrequiresalotof
  350. CPUpower.OnaTTthisisamustbecausethe68030does
  351. multiplicationandshiftopsmuchfasterthanthe68000cpu.By
  352. theway,thisalsoappliestothe68020-soifyouhavea020-
  353. boardinstalledinyourSTE...
  354.  
  355. ♪④êBooster:ÇIncreasestheoutputsignalby6dBusingalittle
  356. trick.Thisimprovesthesignaltonoiseratiobutitalso
  357. introducesacertainamountofdistorsions,especiallywhen
  358. playinghigh-levelsignals.
  359.  
  360. ♪③êProtracker:ÇEnablestheprotrackercompatibility.Ingeneral,
  361. soundmodulesareupwardscompatiblesothatanewplayershould
  362. playcorrectlyanoldmodule,butunfortunatelytheprotracker
  363. intoducedsomefeatureswhicharemorecritical.Soyouhave
  364. thepossibilitytoswitchoffsomeofthenewprotracker
  365. commands.However,old15-instrumentmodulesareplayedwith
  366. protracker-modedisabled,regardlessoftheswitchposition.
  367.  
  368. ♪²ÇêRepeat:ÇThisswitchhastwomeanings,dependingonhowmany
  369. modulesyouhaveselected.Ifyouhaveselectedasinglemodule,
  370. thismoduleisrepeated,elsethewholebunchofmodulesis
  371. repeated.
  372. Bytheway,therearesomemoduleswhichuse'jump'commandsto
  373. buildanendlessloop.Paularecognizestheseandinterrupts
  374. them.
  375.  
  376. ♪③êRandom:ÇThisistherandomplayfunction.Ifyouhaveselected
  377. severalmodules,theywillbeplayedinrandomorder-but
  378. everymoduleonlyonetime!Aftereverymodulehasbeenplayed,
  379. Paulastopsorrestartsthewholeprocess,dependingonthe
  380. 'Repeat'switch.
  381. ë
  382.  
  383.  
  384.  
  385. ♪④CPU-LoaddisplayÇ
  386.  
  387. ThisbargraphshowstheamountofcputimePaulaneedsforthe
  388. soundsynthesis.Itisarelativedisplay,100%arealwaysthe
  389. totalcputime,nomatterwhatprocessoryouhave.NoLandmark
  390. orNorton-that'ssimplynotinformativeenough.
  391. Attherightedgeofthecpuloadbargraphthereisalittlered
  392. boxwhichflasheseverytimeyourmachinewasnotfastenough.
  393.  
  394.  
  395.  
  396.  
  397. ♪⑤ëPosition
  398. Ç
  399. Thisdisplayshowsthecurrentpositioninthemodule.It's
  400. usingthehexadecimalformat-youknow,programmersdoitin
  401. hex!
  402.  
  403.  
  404.  
  405.  
  406. ♪④ëGeneralinstructions:
  407. Ç
  408. Themaincommandsaremainlyintuitiveandshouldbeeasyto
  409. use.Buttherearealsosomespecialfunctionswhicharenotso
  410. evident.Theseare:
  411. *leavingthemaindialog
  412. *selectingmultiplemodules('multiplaymode')
  413. *keycommandlogic
  414.       *hiddenfeatures
  415.  
  416. ♪③WhenyouclosethemainwindowandPaulaisanaccessory,the
  417. playerwillcontinue.Moreoveryoumayclosethiswindowby
  418. simplypressingthe<Return>key-analogoustoXCONTROL.ACC.
  419. ButifPaularunsasaprogram,closingthemainwindowwill
  420. terminatetheprogramandtheplayerwillofcoursebestopped.
  421. soinPRGmodeyoucan'tquitbypressing<Return>-youmust
  422. clickonthecloser-gadgetofthewindow.
  423.  
  424. ♪²ÇêSelectingmultiplemodules...Ç
  425. Thesimplestwaytoselectmorethanonemoduleistouse
  426. wildcards.Insteadofselectingafileinthefileselector
  427. simplychoosetherightpaththentypethefilespecification,
  428. e.g.'A*.MOD'.Thiswouldplayanymodulewhosenamestarts
  429. with'A'.Ifyousimplywanttohaveallmodulesplayedwhich
  430. arelocatedinonedirectory,simplyselectthatdirectorybut
  431. don'tenteraname.Paulawillthenautomaticallyselectany
  432. filewhichmatches'*.MOD'.
  433.  
  434. ♪③ê...automatically:Ç
  435. Createadirectoryonyourbootdevicewiththename'AUTOMOD'
  436. andcopyyourfavoritemodulesintoit.AssoonasPaulais
  437. starteditwillplaythesemodules.
  438. ♪②Thisfunctionistheonlyonethatdoesn'tworkinunregistered
  439. copies.
  440.  
  441. ♪③ê...usingSelectric:
  442. ÇIfyouuse'Selectric™'asafileselectoryoumayselect
  443. multiplefiles(shift-key+mouseclick),Paulawillloadthem.
  444. You'llfinddetailsintheSelectric-manual.
  445. Selectric™isasharewareutilitybyStefanRadermacherand
  446. OliverScheel.
  447.  
  448. ♪③ê...usingGemini:
  449. ÇDragtheiconofPAULA.ACContothedesktopandinstallitas
  450. anapplicationfor.MOD-typefiles.NowyoumaycallPaulaby
  451. double-clickingit'sicon,playamodulebydouble-clickingit,
  452. orevenlistentoseveralmodulesbydraggingthemontothe
  453. PAULA-icon.
  454. GeminiisasharewareprogrambyGereonSteffensandStefan
  455. Eissing.
  456.  
  457. ♪③Somewordsabouttheêkeycommandlogic:ÇPaulaalwaystriesto
  458. stayinthecurrentmode.Ifamoduleisrunningandyouload
  459. anotherone,thenewlyloadedmoduleisimmediatelyplayed.
  460.  
  461. ♪③IfPaulawasstoppedwhenyouselectmultiplemodules,itwill
  462. gointothe'pause'-mode.Thishastobedonethatwaybecause
  463. Paulawillforgeteverythingassoonasitentersthe'Stopped'-
  464. mode.Isuggestthatyoutrythesecommandstofamiliarize
  465. yourselfwithit.
  466.  
  467.  
  468.  
  469.  
  470. ♪⑤ëSetup-Page-dialog
  471. Ç
  472. Thisdialogboxiscalledwiththe'!'-command.Itofferssome
  473. nicefeaturestomanipulatethesoundaswellasthe'save'-
  474. function.
  475.  
  476. ♪③êPitchBend(cent):ÇThisisafinetuningfunction.100centis
  477. onehalftone,andyoumay(fine-)detunePaulabyonehalftone.
  478. Thestandardtuningcorrespondstoa'NTSC'-Amigawith7.15909
  479. MHzclockfrequency.Togetthe'PAL'-Amigatuning,setthe
  480. Çpitchbenderto-10..-15cent.Thestepsare5cent,afiner
  481. stepisnotneededasthehumanearhasalreadyproblemsto
  482. detectadetuningby5cent.
  483.  
  484. ♪③êTranspose:ÇThisisthecoarsetuningfunction.Itchangesthe
  485. tuninginhalftonesteps,maximumis12halftoneswhich
  486. correspondstooneoctave.
  487.  
  488. ♪③êFrameSpeed:ÇThisisthe'ticker'speedusedasaspeed
  489. referenceinthemodule.OntheAmigathisisthe50HzVBlank
  490. interrupt,sothestandardsettingis50Hz.Paulaallowsany
  491. valuefromhalftodoublespeed(25..100Hz).
  492.  
  493. ♪③êSave:ÇSavesthecurrentsetupintothe'PAULA.INF'fileandthen
  494. leavesthedialog.Notethatallsettingsaresaved,themain
  495. dialogsettingsaswellasyourregistrationdata.
  496.  
  497. ♪②êExit:ÇLeavesthedialogwithoutchanginganything.Howeverthe
  498. changesyouhavemadewillnotbeundone.
  499.  
  500. ♪②êReset:ÇResetsthethreesettings(Pitchfine/coarse,Speed)and
  501. leavesthedialog.
  502.  
  503.  
  504.  
  505.  
  506. ♪④ëInfoPagedialog:
  507. Ç
  508. Theunavoidableinfobox...andalsoanicewaytoremindyou
  509. sometimesofthefactthatyouarestillusinganunregistered
  510. copy!
  511.  
  512.  
  513.  
  514. ♪⑤ëPackedmodules!
  515. Ç
  516. Paula2.1supportsLZ5orAFXpackedmodules.Tomakesuch
  517. packedmodulesyoucanuseLHARC2.01!Supposethatyouhaveall
  518. yourmodulesgatheredinthedirectoryC:\AUTOMODandyourhard
  519. diskisgettingfull.ThenlaunchLHARC.TTPandenterasa
  520. commandline:'ücC:\AUTOMOD\*.MODÇ'.TheLHARCprogramwillthen
  521. packallyourmodules,reducingthemtoapproximativlyto75%of
  522. theiroriginalsize.Paulawillnotmakeanydifferencebetween
  523. packedandunpackedmodules,sothisiscompletelytransparent
  524. totheuser.
  525. Ifyouareusinganunregisteredcopy,theattempttoloada
  526. packedmodulewillonlyissueanerrormessage('Corrupted
  527. MODfile').
  528.  
  529.  
  530.  
  531.  
  532. Ç
  533. ♪⑤ëRegistrationprocedure
  534. Ç
  535. Theinfopagehasabigbuttoninthelowerleftcornerin
  536. whichthetext'-unregistered-'iswritten.Ifyouclickonit
  537. yougetanotherdialogbox-theregistrationform.That's
  538. whereyoumustenteryournameandyouraddressaswellasyour
  539. personalkey.IftheseentriesarecorrectPaulaisregistered
  540. andtherearenomorerestrictions.Nowifyougetan
  541. (unregistered)updateofPaulayouonlyhavetorepeatthis
  542. proceduretogetanewregisteredcopy.Thisappliestoall
  543. future2.xreleasesofPaula!
  544.  
  545. Togetyourpersonalkey,pleasesendme:
  546.  
  547. ♪④*Yournameandaddress-readable,please!
  548.             Name:<firstname><lastname> (30charsmaximum)
  549.             Addr: <street>           (""")
  550.             City:<zipcode><city>      (""")
  551.  
  552. ♪②    *Yoursharewarefee-600FBor30DMorequivalent-withthe
  553. remarkthatit'sforPaula.Somepossibilitiesare:
  554.  
  555. ♪②êcashÇ-alwaysOK.Tomakesurethatthemoneyreachesits
  556. correctdestinationyoumaysenditasaregisteredletter.
  557.  
  558. payintomyêpostalchequeaccountÇ-agoodway!
  559.  
  560. normalêchequesÇwon'tbeacceptedanylonger,it'stheworst
  561. alternativebecausethebankalwaystakesaparttocover
  562. miscellaneousfees...(around400FB/20DM).Exception:
  563. êEurochequesÇover600FB(FrancBelge)-theseareokay!
  564.  
  565. ♪③AssoonasIgetthemoneyyouwillreceiveyourkeybyletter
  566. orE-mail.YoumaythenenteryourdataintoPaula's
  567. registrationformandverifyiftheregistrationwassuccesful.
  568. Ifsothelargebuttonintheinfodialogentitled'Registered
  569. to:'willshowyourname.Inthatcasedon'tforgettosavethe
  570. currentsetupsothatPaulawillrememberit'sregisteredstate
  571. nexttimeyouboot.
  572. Ifitdidn'twork,pleaseverifythespelling-Paulawon't
  573. accepterroneousdata.
  574.  
  575. ♪②üImportantnote:ÇNEVERgiveawayyourPAULA.INF-fileasyour
  576. registrationdataissavedinthatfile!
  577.  
  578. ♪③Ifyouchangeyouraddressand/ornameyouwillneedanewkey.
  579. Inthatcasesendmeyournewdata(apostalcardwilldothe
  580. job)andyougetanewkeyassoonaspossible.
  581.  
  582. ♪②IfyouhavemorequestionsorproblemswithPauladon'thesitate
  583. towriteme!
  584. ë
  585.  
  586.  
  587.  
  588. ♪ⁿëErrormessages:
  589. Ç
  590. Paulanormallyreportserrorsusingstandardalertboxes.To
  591. avoidproblemswithunwantedalertboxespoppingupPaulawon't
  592. complainaboutit'sproblemsifit'smainwindowisclosed.
  593.  
  594. ♪④Let'sassumeyouselectedthemodules,A.MOD,B.MODandC.MOD;
  595. randommodeisoff.PaulastartsplayingA.MOD,theyouclose
  596. thewindow.AfterfinishingwithA.MOD,Paulatriestoload
  597. B.MOD.IfthisdoesnotsucceedPaulawillstopanyfurther
  598. activitiesandwillgointothe'Inactive'state.Ifyouinvoke
  599. Paulaandselect'LOAD',youwillseethenameanpathofthe
  600. modulewhichcausedtheerror.
  601.  
  602. ♪④Ifyougetthemessage'CorruptedMODfile'thismeansthatthe
  603. selectedmodulecannotbeplayed.Inthatcasetrytheutility
  604. 'CHECKMOD.TTP'whichanalyzesamoduleandalsorepairsit-if
  605. possible.
  606.  
  607.  
  608.  
  609.  
  610. ♪⑥ëMoreinfos...
  611. Ç
  612. Amodulecontainsupto31differentsampleswhicharealso
  613. called'instruments'.Toplayagivensampleatdifferent
  614. pitchestheAmigasimplyvariesthereplaysamplingfrequency.
  615. Thehigherthesamplingfrequencythehigherthenote.Asthe
  616. Amigahasfourindependentsoundchannels,eachonehavingit's
  617. ownD/Aconverteritcanplayfourdifferentsamples
  618. simultaneouslywithoutthehelpoftheCPU.TheAtarihasonly
  619. twochannels(stereoL+R)whicharenotindependentandonly
  620. fourfixedsamplingrates.Soanothertrickmustbeusedto
  621. simulatetheAmigaChip-the'directdigitalsynthesis',or
  622. 'resampling'asthisprocessismorewidelycalled.It'snot
  623. difficulttounderstand:thesampledataisnotreplayedata
  624. 1:1ratebutwithan1:RratewhereRisafloatingpoint
  625. number.IfyouwanttoplayasampleathalfspeedRis2-
  626. everybyteofthesampleisoutputtwice.Ifyouwantittobe
  627. at75%ofit'soriginalspeed,Ris1.5-thistimeonebyteis
  628. outputtwice,thesecondisoutputonceandsoon.
  629. Unfortunatelythesamplingdataisoutputirregularly-which
  630. givesadistortedsound.Therearetwowaysofeliminating
  631. thesedistorsions.Eithermakethestep'R'ratherbig(this
  632. wouldrequireverylargesamplesoriginallysampledatavery
  633. highrate)orêinterpolateÇtheoutputdata.Thebestthingwould
  634. beasplineinterpolationbutunfortunatelythisrequires
  635. matrixoperations,soPaulausesasimplelinearinterpolation.
  636. Don'tconfuseitwiththe'oversampling'ofsomeothermodule
  637. players-theyonlydoubletheoutputdataandsetthesound
  638. hardwaretothedoublesamplingfrequency.
  639. ♪③Theresultingsoundisofaveryhighquality-at50KHz
  640. samplingrateevenbetterthantheAmiga!Thisisduetothe
  641. factthattheTT/STEhasno7KHzlowpassfilterwhichcutsoff
  642. thehighfrequencies.IftheAmigaswitchesofthisfilterit
  643. alsoproducesmoretreblesbutalsomorealiasingcomponents.If
  644. ÇyoudoubtaboutthattakeanAmiga,listentoitandreadabout
  645. thefactsintheHardwareReferenceManual[2].
  646. ♪③HowevertheAmigahasalargerêdynamicÇrangeduetoit'sfour
  647. volumeregisterswhichintroduceanother36dBdynamic-but
  648. thatisnotthesamethingasthesignal-to-noiseratiowhichis
  649. always48dBfor8bitsystems(theoreticallyofcourse;some
  650. systemsaredisturbedbytheRFpresentinthecomputer).The
  651. D/AconvertersusedintheAmigaaresometimescalled'floating
  652. pointconverters'.InordertocopewiththisPaulahasthe
  653. 'Boost'option.Thisoptionsimplysimulatesa9bitD/A
  654. converterbyusinganonlinearconversionscheme.Theresultis
  655. OKforlowvolumeMODsbutitintroducesadditionaldistorsion
  656. athighoutputlevels.
  657.  
  658. ♪④Ifyoudon'tmindabouthowtheinterpolationroutineworks,
  659. skipthefollowingparagraph.Ifnot-Ihopeyouknowhowto
  660. readaCroutine.
  661.  
  662. ♪⑤/*Fix-Pointnumberrepresentingthestep'R'*/
  663. typedefstructfxp{
  664. intip;/*integerpart(1/1)*/
  665. intfp;/*fractionalpart(1/65536)*/
  666. }fixpoint;
  667.  
  668. ♪⑧    /*Fetchabytefromthesampledataandcalculatethecorrect
  669.      *'inbetween'value.
  670. *Param:spl:Pointertothesample(char*)
  671. *index:thearrayindexasFixpoint-number
  672. *volume:Amiga-volumeregistervalue,0..64
  673.      *Return:theresultingsamplevalueas16bitinteger
  674.     *range:14bit(8bitsample+6bitvolumeinfo)
  675. */
  676. ♪⑨intget_samplevalue(char*spl,fixpointindex,intvolume)
  677. {
  678. ints1,s2;/*SamplevaluessánÇundsán+1Ç*/
  679.  
  680. s1=volume*spl[index.ip];
  681. s2=volume*spl[index.ip+1];
  682.  
  683. return(((s2-s1)*index.fp)/65536+s1);
  684. }
  685.  
  686.  
  687. ♪③Besidesthisroutinetheindexhastobeincremented(addition
  688. oftwofixpointnumbers),thereturnvaluemustbescaledand
  689. saved,andthesamplemustbecheckedifithasreachedtheend.
  690. Astherearefourchannelswhichmustbecalculatedtheabove
  691. routineiscalled200,000timespersecond.Tomakethisrunin
  692. realtimealotofoptimizationsmustbedone.Eventhe68030
  693. wouldbetotallyoverworkediftheseroutineswerereally
  694. writteninC(thatmeans:IambetterthanmyCcompiler...).
  695.  
  696.  
  697.  
  698.  
  699. ëAreallynicechapter:BUGS&LIMITATIONS!
  700. Ç
  701. ♪③êCollisions:
  702. ÇNormallyPaulashouldnotinterferewithanyotherprogram-but
  703. problemswithotherutilitiesaccessingthesoundhardwareare
  704. unavoidable.Aslongasthe'opponent'iswellprogrammed
  705. nothingwillhappen-exceptthatPaulaisstoppedaslongas
  706. theotherprogramusesthesoundchip.Asimpletest:runtwo
  707. Paulas...
  708.  
  709. ♪③êOverload:Ç
  710. Whenyourcomputeristotallyoverloadedtheinternaltimingis
  711. somewhatconfused.AsaconsequencethemomentwhenPaulawrites
  712. intothesoundregistersisundetermined.Soitmayhappenthat
  713. thesoundchipstartsplayingthewrongdata-howeverthe
  714. registerscontaintherightvalues!Inthatcase,choosealower
  715. samplingfrequencyorswitchoftheinterpolation.Orhaveyou
  716. forgottentoturnonthe68030cache??
  717. 
  718. ♪④êResolutionchange:
  719. ÇBeforeyouchangeresolutionsmakesurethatPaulaisinactive.
  720. CallPaula,press'STOP'andleavePaulaagain.UnderMultiTOS
  721. theproblemmightbesolvediftheOSsendsanAP_TERMmessage
  722. toeveryapplication-becausethistellsPaulatostopall
  723. activities.
  724.  
  725. ♪④êProtracker'CIA'-replay-speed:
  726. ÇFromversion2.2ontheCIAspeedsetupworksexactlyasinthe
  727. original.ThedisadvantageisthatsomeNoisetrackermodulesare
  728. nowplayedincorrectly;soyouhavetoswitchofftheprotracker
  729. modewhenyouplaysuchmodules.
  730.  
  731. ♪④êSystemcrashonSTE's:
  732. ÇIknowoftwo1040STEcomputersonwhichPauladoesn'trun.The
  733. symptoms:thecomputerfreezes,theonlyescapebeingthereset
  734. button.Thisislikelytobeahardwareproblemasthereis
  735. absolutelynolinkbetweenthecrashesandthemodulesplayed.
  736. Similarsymptomswereexperiencedona1040STEwitha16MHz
  737. processorcard-itcrashedduetoacacheproblem.Ifyouhave
  738. suchanSTE-sorry,noremedy,it'sahardwarebug!
  739. ë
  740.  
  741.  
  742.  
  743. ♪④Internals
  744. Ç
  745. êGEM-UserInterface
  746. ÇPaularespondstothe'VA_START'-message(introducedbyGemini).
  747. Thismessagecontainsapointer(inmsg[3]andmsg[4])whichis
  748. evaluatedbyPaula:
  749.  
  750. ♪②*NULLpointerorpointertoanemptystring:Paulareactsin
  751. thesamewayasifitwasanAC_OPENmessage.
  752. ♪②*Pointertoastringcontainingonename:Paulatriestoload
  753. thismoduleandstartsplayingit.
  754. ♪³Ç*Pointertoastringwithseveralspaceseparated
  755. modulenames:PaulaenterstheMultiplaymodeandplaysthem
  756. all.
  757.  
  758. ♪③ThestringiscopiedinternallybyPaula,soitmaybelocalon
  759. thewriter'sside.Howeverthememorymustbereadable-beware
  760. oftheMultiTOSmemoryprotection!!!
  761. ♪③Thestringalsomustcontaincompletepathandnameindications,
  762. NOWILDCARDS.ThesourcecodeofMP(ModPlay)mayserveyouas
  763. anexample.
  764.  
  765. ♪③    êMemoryusage
  766. ÇPaulaneedssome45KBforit'sprogramcodeanddata.On
  767. machineswitha68000processoranother15KBareusedforthe
  768. volumetables.
  769.  
  770. ♪③êVectorstealing...
  771. ÇPaulausestheIO7interruptofthe68901-MFP.Ofcoursethe
  772. 'XBRA'protocolisused,it'smagicis'PAUL'.
  773.  
  774. ♪③êEmergencystop
  775. ÇWanttokillPaula?Well,don'tforgettosendanAP_TERM
  776. message(GEMmsg#50)toitbeforedoingso.
  777.  
  778. ♪④êSpeeeeed!
  779. ÇTosaveCPUtimeonyourTTPaulashouldbeloadedintoFastRAM
  780. andtheprocessorcacheshouldbeenabled.WithoutcachePaula
  781. willprobablyhaveproblemsdoing50KHzwithinterpolation...
  782. Maytheschwartzbewithyou!
  783.  
  784. ♪④    êHardware
  785. ÇTimerAandthewonderfulYamahasoundchiparenottouched.
  786. Thekeyclickandthewonderful'bell'soundwon'tbeaffected.
  787. MoreoveryoumayalsouseSTSPEECHoranyotherutilityto
  788. producedigitalsoundeffectsontheYamahachip.
  789.  
  790. ♪③êDevelopment
  791. ÇPaula2wasdevelopedusingthePureCcompilerandthePure
  792. Assembler.The'realMODplayer',thereplayroutineisbasedon
  793. the'Protracker1.1BPlayer'oftheAmigaFreelancers.
  794.  
  795. ♪⑧êThanxforthehelp...
  796. ÇIwanttothankthefollowingpeoplefortheirhelp:
  797. JoelFrançoisAmigahardwaredocumentation,D.O.C.
  798. ReplayRoutine
  799.       FridolinKochProtrackerreplayroutine,goodMODs
  800. Betatesters:
  801.       GeorgesKesseler   Optimizationideas,'Repeat-Finder'
  802.       ChristianLimpach",STE-DMA-Emulator!!!!
  803.  
  804.  
  805.  
  806. Ç
  807. ♪⑤ëMP-ModPlayInterface
  808. Ç
  809. MP.TTPisasimpleutilitywhichgivesyouthepossibilityto
  810. launchmodulesfromacommandshell.MPsimplysendsaVA_START
  811. messagetoPaula.Mpdoesn'tevaluatewildcardsbutitis
  812. awareoftheARGVmethodtodealwithlargecommandlines(link
  813. itwith'PCVSTART.O'whencompilingitwithPureC).Thisis
  814. idealforusewithMintShelorMupfel.
  815.  
  816. ♪③AlsotrytoinstallMPasaapplicationfor'*.MOD'-filesin
  817. thestandardDeskTop-youmaythenlistentomodulesbydouble
  818. clickingthem.
  819.  
  820. ♪②MPisnotanexampleforagoodCprogrammingstyle-itisvery
  821. simpleandstraightforward.MP.TTPandMP.Carepublicdomain.
  822.  
  823.  
  824.  
  825. Ç
  826. ♪⑤ëCHECKMOD-themodule-doctor
  827. Ç
  828. EventuallyPaulawillrefuseamodulewiththecomment
  829. 'CorruptedMODfile'.InthatcaseuseCHECKMODtocheckand
  830. mayberepairthemoduleinquestion.SimplystartCHECKMODand
  831. typeinthenameofthemoduletotest.UnderTOS2.06/3.06drag
  832. themodule'siconontotheCHECKMODicon.
  833.  
  834. ♪③Checkmodwillthenreadthemoduleandcontrolit'sinternal
  835. structures.Itdisplaysalistwiththeusedintstrumentsand
  836. reportstheerror.Thesemaybe:
  837.  
  838. ♪②êCorruptedPatternList:ÇSorry,butthismodulecannotbe
  839. repaired.
  840.  
  841. ♪③êShortSample:ÇAsampleistooshort.Ifthisaffectsonlythe
  842. lastsampleandifthedifferenceisn'ttoobigCheckmodwill
  843. probablybesuccessful.Paulatolerates4lackingbytes.
  844.  
  845. ♪③êSuperfluousDatainMODfile:ÇNoproblem-thismodulssimply
  846. hassomegarbageappended.Checkmodcutsitoff,becausePaula
  847. toleratesonlyupto256bytesofgarbage.
  848.  
  849. ♪④AfterrunningCheckmodyougetthetext'êSaveModuleas:Ç'.Press
  850. <Return>toleave,orenterasingledot'.'tosavethemodule
  851. underit'scurrentname.Orenteranewpathandnametosave
  852. themoduleusinganothername.
  853.  
  854.  
  855.  
  856.  
  857. Ç
  858. ♪⑥ëSupportedmodulecommands
  859. Ç
  860. $0Arpeggio
  861. $1Portamento_up
  862. $2Portamento_down
  863. $3Noteslide
  864. $4Vibrato
  865. $5PortamentoDown+Volumeslide
  866. $6Vibrato+Volumeslide
  867. $7Tremolo
  868. $8(PhasorEffect-ignored)
  869. $9PlayEndpartofSample
  870. $AVolumeslide
  871. $BPosition
  872. $CSet_volume
  873. $DPatternbreak
  874. ♪④$EExtendedCommands:
  875. E0xFilterOn/Off(ignored)
  876. E1xFinePortamentoUp
  877. E2xFinePortamentoDown
  878. E3xSetGlissandoControl
  879. E4xSetVibratoWaveform
  880. E5xSetFineTune
  881. E6xLoop
  882. E7xSetTremoloWaveform
  883. E8xStop-ignored!!
  884. E9xRetriggerSample
  885. EAxFineslideVolumeup
  886. EBxFineslideVolumedown
  887. ECxNoteCut
  888. EDxNoteDelay
  889. EExPatternDelay
  890. EFxnoop
  891. $FSet_speed
  892.  
  893.  
  894.  
  895.  
  896. ëBibliography
  897. Ç
  898. ü[1]Ç Jankowski/Rabich/Reschke
  899.     Atari Profibuch ST/STE/TT
  900.     Sybex Verlag, ISBN 3-88745-888-5
  901.  
  902. ü[2]Ç Amiga Hardware Reference Manual
  903.     Addison-Wesley, ISBN 0-201-18157-6
  904.  
  905. ü[3]Ç Thomsen
  906.     Digitale Audiotechnik
  907.     Franzis' Verlag, ISBN 3-7723-7151-5
  908.  
  909. ü[4]Ç DDS - Direkte Digitale Synthese
  910.     Elektor Nº257, Mai 1992, s.52ff
  911.  
  912. ü[5]Ç Ulrich Michels
  913.     dtv Atlas zur Musik, Band 1 (Akustik, Wellenlehre, Tonparameter)
  914.     Deutscher Taschenbuch Verlag, ISBN 3-423-03022-4
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921. 9[....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆....◆.]0010
  922. ëRegistrationform
  923. Ç
  924.  
  925. IusePAULA,version2.__andIwanttoregister.
  926.  
  927.  
  928. Firstandlastname(upto30characters):
  929.  
  930.     ______________________________
  931.  
  932.  
  933. Youraddress:
  934.  
  935.     ______________________________
  936.  
  937.  
  938.     ______________________________
  939.  
  940.  
  941.  
  942.  
  943.  
  944. Someroomforcomments,ideasandbugreports(pleasetellmeabout
  945. yourhardwarewhenyouhaveproblemswiththeMODplayer,this
  946. helpsalot):
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.