$KOSDK̅TJULjk hkTiPTȥQTȥRTȥSTȥhTȥjTTPeiRUQiSkeRTSiU`hiPTQURȱRTkRPȱRQȱRjȱRSRhi`l```` ߦӥ`A>  yJVWPXȱPYfgXhYi :JXYVfWgXhYi :JVWVWLa PVȱPWVlWmPVȱPWVnWopqrsnVoWVWPI0L nVoW8VVWWVtWuL nVoWVtWutVuWVnWoLp nVoWlXmYVeXVWeYWVVVVWV0WPIL 9VWPI0Lh nVoWlXmYVeXVWeYWVVVVW-EVjEWjLh pVqWVWLp L nVoWlXmYVeXVWeYWVVVVW-EVjEWjL pVqWVWLp pVqW8VVWWVpWqL pVqWnXoYlZm[XeZXYe[YXXXXY8X0XYYrZs[XfYgZh[i IXYVeXVWeYWVpWq fgZh[i IVWVrWsnVoW8VXWYXnYoVWL pVqWVWLaTȩTTȩT dI͠TȩBT/VVVWVTȥWT GTȩTTȩT dITȩBT GTȩBT GTȩBT GTȩBT GwTȩBT GjTȩBT GRTȩBT G:TȩBT G'TȩBT GTȩBT GTȩBT GTȩAT GѠTȩAT GTȩAT GTȩTTȩT dITȩAT GTȩAT GTȩAT GmTȩAT GLTȩAT G'TȩAT GTȩAT GTȩ@T GŠTȩ@T GTȩ@T G`  GFTȩ@T G,Tȩ@T GTȩ?T GyTȩ?T G4Tȩ?T GTȩ>T GTȩ>T G9Tȩ>T GTȩ=T GTȩ=T Gl GVWVllVVVWVWLO GTȩ=T GTȩ=T GnTȩ=T G,Tȩ=T GݠTȩsoundgen v0.3-goyo 2019 %dWORK. /13B[%d]=%d B[%d]=%d SOUND No %d = 1111 0Fh /-------- (vol remains quiet) 1110 0Eh \/\/\/\/\ 1101 0Dh /'''''''' (vol remains high) 1100 0Ch ///////// 1011 0Bh \'''''''' (vol remains high) 1010 0Ah \/\/\/\/\ 1001 09h \-------- (vol remains quiet) 1000 08h \\\\\\\\ 01XX 04h-07h /-------- (same as 0Fh) 00XX 00h-03h \-------- (same as 09h) Bin Hex Shape B0 - Hold B1 - Alternate B2 - Attack B3 - Continue According to wikipedia (french) : bits 0 to 3 permit to control the sound envelop but only 10 are available because only B2 is taken into account when B3 is equal to zero : 13 --> envelop (0 to 15) note:only bits 0 to 3 are used. T = n*256 / 1MHz ;with n in range 1..65535 (256µs .. 16.7 seconds) complete, the completion time for 16 steps is therefore: Depending on the envelope shape, the volume is incremented from 0 to 15, or decremented from 15 to 0. In either case it takes 16 steps to 11 and 12 --> Envelope step frequency - sound duration - (0 to 65535) note:Frequency=1MHz/16/n (n=0 acts as n=1) This amplitude corresponds to the voltage output to a speaker.(15 -> max/1, 14 -> max/1.414, 13 -> max/2, etc.) real world amplitude = max / sqrt(2)^(15-n), Note : The volume is non-linear. The 'real world' amplitude can be computed like this : - bit 4 (modulation) : 0 -->fixed amplitude 1-->amplitude controlled by B0-B3 and the envelop generator- bits 0 to 3 (amplitude): maximum amplitude or volume (0 to 15) more precisely : 8,9,10 --> volume A,B,C (0 to 16) (note: bit 6 is the port A direction and bit 7 the port B direction, not used for sound generation) becarefull: bit=0 means 'activated' bit=1 means NOT activated, for the 6 bits bit 3,4 et 5 mixing of the noise into the three primary channels bit 2: channel C bit 1: channel B bit 0: channel A 7: Channels activation 6 : period of the noise generator (between 0 and 31) note: only bits 0 to 4 are used, Frequency=1MHz/16/n (n=0 acts as n=1) Possible frequencies are in range from 62500Hz (n=1) down to approx. 15.26Hz (n=4095) note:n=real_period/16/T0 (TO=1µS for Oric) or in short Frequency=1MHz/16/n (n=0 acts as n=1) - 4 et 5 : tone (pitch) on channel C (between 0 and 4096) (12 bits) - 2 et 3 : tone (pitch) on channel B (between 0 and 4096) (12 bits) - 0 and 1 : tone (pitch) on channel A (n between 0 and 4096) (12 bits) Now, what is the meaning of each byte of the table ? Simply, they correspond to the AY-3-8912 registers : Wed Jun 13, 2007 8:20 pm infos from waskol post from : http://forum.defence-force.org/viewtopic.php?f=24&t=692 'S'=silence - 'M'=more informations 'L'=load sample:PONG sound 'C'=clear sound data - 'ESC' to exit 'D'=display current sound data 'UP'&'DOWN' to move in sound values 'LEFT'&'RIGHT' to change sound 'I'=intellt random snd-'R'=random snd 'ENTER'=edit-'SPACE'=play-'A'=add snd envelop 0-15 b0-3 snd duration (h) snd duration0-65535(l) CHL C volume 0-15 CHL B volume 0-15 CHL A volume 0-15 CHL act b0=A b1=B b2=C noise periode 0-4bits TONE-CHL C TONE-CHL C 12 bits TONE-CHL B TONE-CHL B 12 bits TONE-CHL A TONE-CHL A 12 bits VOLUME=%d (+ & - keys) jBk FEBELDTEȱTEȱTjȱTkȌHDj%qE) EjD` EL#DȌH EEE ߥХEE Hhi LEȌH HH E^hLEȱjd{fsKcxL+DȌH H E/E)D(EEʈ L骘hȊhEELEL>DȌH H E E )hhLEȌH HCDD E E, ELJE-D EE)80C E ) EL\E E,D8CCDDChȭDhDHL#DDHC .D .DmCChmDC*D80mCCD` E)EEE`4EEE`  AAAAAABBBBBB ; 8`T H 8hL8TjȱTkj FkLF LFTjȱTk ;  jȪ 8LF߈LF Fjjk`TjȱTkjLGTjȱTkjȱj`TjȱTkȱTj`TjȱTkȱTjTj`TjȱTkljTȱT ljTȱTj``L3L!LLLLLL*LLL ;LGLG ;LGGFGLGL84GG`ҍGGGTGȱTGȱTjȱTkȌHj %0 G`ȌHTmHUi { hiHiHLHȱjdSfscxVLHHHTȌHHLHȌHHThȱTiȌHh GiLHHLHȌH H IhiLHȌH Hi Hh HHLHJJJJ H) ii0LGHThȱTiȌH`ThȱTi I`i-H8hhiiH LIHȥhiHhi0HHH`&h&i*  &h&i`TjȱTkjH)j jikh ڥ hjLjkj&k&f&ghejjiekkfjk`g8ffgg I8jk`gEiH J :Jh0g`gH J lJh0k`fkg8fg`g 8ffggi 8hhii`hi4jkf&g&j&k8jhkijk&f&gfg` :Jjk`L~Ģ Uҥ`TȱT`TJTJ 4JJL`Dbug