Previous 199869 Revisions Next

r37081 Wednesday 8th April, 2015 at 14:27:15 UTC by Zoƫ Blade
Tidy whitespace in plain text files
[docs]SDL.txt config.txt floppy.txt hlsl.txt imgtool.txt m6502.txt windows.txt
[src/emu/cpu/i86]i86.txt
[src/emu/sound]pokey.txt
[src/mame/etc]template_readme.txt
[src/osd/sdl]README_SDL20.txt
[src/osd/sdl/keymaps]km-ch.txt km-fr.txt

trunk/docs/SDL.txt
r245592r245593
1313
1414-[no]oslog
1515
16   Outputs the error.log data to the stderr TTY channel (usually the
16   Outputs the error.log data to the stderr TTY channel (usually the
1717   command line window MAME was started in). This can be used at
1818   the same time as -log to output the log data to both targets as well.
1919   Default is OFF (-nooslog).
r245592r245593
3434
3535-[no]multithreading / -[no]mt
3636
37   Enables multithreading for the final drawing operation.  This can help
37   Enables multithreading for the final drawing operation.  This can help
3838   performance on multicore/hyperthreaded systems with slow video cards,
3939   but may cause undesired behavior in some games.
4040   Note that some drivers in MAME and MESS will use multiple threads even
4141   when this is set to OFF, assuming -numprocessors allows it.
4242   The default is OFF (-nomultithreading).
43   
4443
4544-numprocessors <auto|value> / -np <auto|value>
4645
4746   Specify the number of processors to use for work queues. Specifying
48   "auto" will use the value reported by the system or environment
47   "auto" will use the value reported by the system or environment
4948   variable OSDPROCESSORS. To avoid abuse, this value is internally limited
50   to 4 times the number of processors reported by the system.
49   to 4 times the number of processors reported by the system.
5150   The default is "auto".
5251
5352-sdlvideofps
r245592r245593
6867
6968-video <soft|opengl|none>
7069
71   Specifies which video subsystem to use for drawing.  The default for
72   Mac OS X is 'opengl' because OS X is guaranteed to have a compliant
70   Specifies which video subsystem to use for drawing.  The default for
71   Mac OS X is 'opengl' because OS X is guaranteed to have a compliant
7372   OpenGL stack.  The default on all other systems is 'soft'.
7473
7574-numscreens <count>
r245592r245593
188187-[no]gl_pbo              Enable OpenGL PBO,  if available (default on)
189188
190189   These 4 options are for compatibility in -video opengl.  If you report
191   rendering artifacts you may be asked to try messing with them by the
190   rendering artifacts you may be asked to try messing with them by the
192191   devs, but normally they should be left at their defaults which results
193192   in the best possible video performance.
194193
r245592r245593
363362-joy_idx6            Name of joystick mapped to joystick #6, default is auto.
364363-joy_idx7            Name of joystick mapped to joystick #7, default is auto.
365364-joy_idx8            Name of joystick mapped to joystick #8, default is auto.
366-sixaxis             Use special handling for PS3 Sixaxis controllers.
365-sixaxis             Use special handling for PS3 Sixaxis controllers.
367366                     Default is OFF (-nosixaxis)
368367
369368
trunk/docs/config.txt
r245592r245593
294294        Displays a list of all devices known to be hooked up to a game.  The ":"
295295        is considered the game itself with the devices list being attached to give
296296        the user a better understanding of what the emulation is using.
297
297
298298-listslots [<gamename|wildcard>]
299299
300300        Show available slots and options for each slot (if available).  Primarily
301301        used for MESS to allow control over internal plug-in cards, much like PC's
302302        needing video, sound and other cards.
303         
303
304304-listmedia / -lm [<gamename|wildcard>]
305   
305
306306        List available media that the chosen game or system allows to be used.  This
307307        includes media types (cartridge, cassette, diskette and more) as well as
308308        common file extentions which are supported.
309309
310310-listsoftware [<gamename|wildcard>]
311 
311
312312        Posts to screen all software lists which can be used by the entered gamename
313313        or system.  Notice, this is simply a copy/paste of the .XML file which reside
314314        in the HASH folder which are allowed to be used.
r245592r245593
331331        softwarelistname.  By default, all drivers that have valid ZIP files or directories
332332        in the rompath are verified;  however, you can limit this list by specifying a
333333        specific softwarelistname (without .XML) after the -verifysoftlist command.
334
334
335335-listmidi
336336
337337        Create a list of list available MIDI I/O devices for use with emulation.
338338
339       
340339
340
341341Configuration options
342342---------------------
343343
r245592r245593
570570   find the next empty value for %i and use that for a filename. The
571571   default is %g/%i, which creates a separate folder for each game,
572572   and names the snapshots under it starting with 0000 and increasing
573   from there.  In addition to the above, for drivers using different
574   media, like carts or floppy disks, you can also use the %d_[media]
573   from there.  In addition to the above, for drivers using different
574   media, like carts or floppy disks, you can also use the %d_[media]
575575   indicator.  Replace [media] with the media switch you want to use.
576   A few examples: if you use 'mame robby -snapname foo/%g%i' snapshots
576   A few examples: if you use 'mame robby -snapname foo/%g%i' snapshots
577577   will be saved as 'snaps\foo\robby0000.png' , 'snaps\foo\robby0001.png'
578   and so on ; if you use 'mess nes -cart robby -snapname %g/%d_cart'
579   snapshots will be saved as 'snaps\nes\robby.png' ; if you use
580   'mess c64 -flop1 robby -snapname %g/%d_flop1/%i' snapshots will be
578   and so on ; if you use 'mess nes -cart robby -snapname %g/%d_cart'
579   snapshots will be saved as 'snaps\nes\robby.png' ; if you use
580   'mess c64 -flop1 robby -snapname %g/%d_flop1/%i' snapshots will be
581581   saved as 'snaps\c64\robby\0000.png'.
582582
583583-snapsize <width>x<height>
r245592r245593
607607-statename <name>
608608
609609   Describes how MAME should store save state files, relative to the
610   state_directory path. <name> is a string that provides a template that
611   is used to generate a relative path. Two simple substitutions are
612   provided: the / character represents the path separator on any target
613   platform (even Windows); the string %g represents the driver name of
614   the current game. The default is %g, which creates a separate folder for
615   each game.  In addition to the above, for drivers using different
616   media, like carts or floppy disks, you can also use the %d_[media]
610   state_directory path. <name> is a string that provides a template that
611   is used to generate a relative path. Two simple substitutions are
612   provided: the / character represents the path separator on any target
613   platform (even Windows); the string %g represents the driver name of
614   the current game. The default is %g, which creates a separate folder for
615   each game.  In addition to the above, for drivers using different
616   media, like carts or floppy disks, you can also use the %d_[media]
617617   indicator.  Replace [media] with the media switch you want to use.
618   A few examples: if you use 'mame robby -statename foo/%g' save states
619   will be stored inside 'sta\foo\robby\' ; if you use 'mess nes -cart
620   robby -statename %g/%d_cart' save states will be stored inside
621   'sta\nes\robby\' ; if you use 'mess c64 -flop1 robby -statename
618   A few examples: if you use 'mame robby -statename foo/%g' save states
619   will be stored inside 'sta\foo\robby\' ; if you use 'mess nes -cart
620   robby -statename %g/%d_cart' save states will be stored inside
621   'sta\nes\robby\' ; if you use 'mess c64 -flop1 robby -statename
622622   %g/%d_flop1' save states will be stored inside 'sta\c64\robby\'.
623623
624624-[no]burnin
625625
626   Tracks brightness of the screen during play and at the end of
626   Tracks brightness of the screen during play and at the end of
627627   emulation generates a PNG that can be used to simulate burn-in
628628   effects on other games. The resulting PNG is created such that the
629   least used-areas of the screen are fully white (since burned-in areas
629   least used-areas of the screen are fully white (since burned-in areas
630630   are darker, all other areas of the screen must be lightened a touch).
631631   The intention is that this PNG can be loaded via an artwork file with
632632   a low alpha (e.g, 0.1-0.2 seems to work well) and blended over the
633   entire screen. The PNG files are saved in the snap directory under
633   entire screen. The PNG files are saved in the snap directory under
634634   the gamename/burnin-<screen.name>.png. The default is OFF (-noburnin).
635635
636636
r245592r245593
11221122
11231123        A special 'internal' debugger for debugging.  Activated when used along
11241124        with -debug.  The default if OFF (-nodebug_internal).
1125       
11261125
11271126
1127
11281128Core misc options
11291129-----------------
11301130
r245592r245593
11491149   Specifies the name of a font file to use for the UI font.  If this font
11501150        cannot be found or cannot be loaded, the system will fall back to its
11511151        built-in UI font.  On some platforms 'fontname' can be a system font
1152        name (TTF) instead of a (BDF) font file. The default is 'default' (use
1152        name (TTF) instead of a (BDF) font file. The default is 'default' (use
11531153   the OSD-determined default font).
11541154
11551155-ramsize [n]
trunk/docs/floppy.txt
r245592r245593
369369
370370The 250KHz pulse trains are used to lock the PLL to the signal
371371correctly.  The cell pattern 4489 does not appear in normal
372MFM-encoded data and is used for clock/data separation. 
372MFM-encoded data and is used for clock/data separation.
373373
374374As for FM, the Western Digital-based controllers usually get rid of
375375everything but some 0x4e before the first sector and allow a better
r245592r245593
392392the start and end of the data block part.  They're not supposed to
393393happen on a mastered disk though, even if there are some rare
394394exceptions.
395 
396395
396
397397  3 The new implementation
398398  3.1 Floppy disk representation
399399
trunk/docs/hlsl.txt
r245592r245593
4242radial_converge_x      [r,g,b]         Radial convergence in screen-relative X direction.
4343radial_converge_y      [r,g,b]         Radial convergence in screen-relative Y direction.
4444                                        Allowed values for convergence: -150 to 150 for each color.
45red_ratio               [r,g,b]         These parameters define a 3x3 matrix which is multiplied
45red_ratio               [r,g,b]         These parameters define a 3x3 matrix which is multiplied
4646grn_ratio               [r,g,b]         by the incoming RGB signal. This can be used for any
4747blu_ratio               [r,g,b]         standard matrix convolution, including H/S/V or simply
4848                                        affecting the TV-style tint.
r245592r245593
109109bloom_lvl7_weight       0.12            Bloom level 7  (.) weight.  (0.00-1.00)
110110bloom_lvl8_weight       0.11            Bloom level 8  (.) weight.  (0.00-1.00)
111111bloom_lvl9_weight       0.10            Bloom level 9  (.) weight.  (0.00-1.00)
112bloom_lvl10_weight      0.09            Bloom level 10 (1x1 target) weight.  (0.00-1.00)
No newline at end of file
112bloom_lvl10_weight      0.09            Bloom level 10 (1x1 target) weight.  (0.00-1.00)
trunk/docs/imgtool.txt
r245592r245593
8181only extraction supported
8282not heavily tested
8383
84Lynx archivs could and should be handled in a c64 emulation
84Lynx archivs could and should be handled in a c64 emulation
8585with the native lynx tool
8686
8787
r245592r245593
128128type 7: 3 1/2 inch, enhanced density, DS, 2.88mb: sectors 36, heads 2, tracks 80
129129
130130unix with bash: use
131dd if=/dev/zero of=<name.dsk> bs=512 count=$((9*2*40))
131dd if=/dev/zero of=<name.dsk> bs=512 count=$((9*2*40))
132132to generate standard blank 360kb image
133133
134134
r245592r245593
145145type 0: 20mb standard pc/xt harddisk: 17 sectors, 4 heads, 615 cylinders
146146
147147unix with bash: use
148dd if=/dev/zero of=<name.dsk> bs=512 count=$((17*4*615))
148dd if=/dev/zero of=<name.dsk> bs=512 count=$((17*4*615))
149149to generate standard blank 20mb pc xt harddisk image
150150
151151
152152Virtual MSX tape archive
153153------------------------
154154Converts .tap files from Virtual MSX 1.x to .cas files. It is not
155fault-tolerant.
155fault-tolerant.
156156
157157
158158Virtual MSX Game Master 2 SRAM file
r245592r245593
161161SRAM of Konami's Game Master 2 in "gmaster2.ram". To convert this to something
162162useful with MESS and other MSX emulators, go:
163163
164imgtool getall vmsx_gm2 gmaster2.ram
164imgtool getall vmsx_gm2 gmaster2.ram
165165
166166You'll get a file called gmaster2.mem, which must place in the correct directory
167167of mess to use  (MESS\MEMCARD\GameMaster2 if your Game Master 2 .rom file is
r245592r245593
174174so you don't have to convert them. You can use it to export files to a real
175175MSX. Connect the MSX to the line out of your computer. Give the apropriate
176176command on the MSX (BLOAD "CAS:",R for example) and then play the .wav file
177on your computer.
177on your computer.
178178
179179imgtool dir fmsx_cas file.cas
180180imgtool getall fmsx_cas file.cas
r245592r245593
185185-----------------------
186186
187187The XelaSoft Archive is a compressed file. It can only contain one
188file. Although it can contain any file, it's always used for MSX disk
188file. Although it can contain any file, it's always used for MSX disk
189189images. The were programs written by XelaSoft which made a dump
190190of a disk, and compressing them at the same time. Very useful to store
191191a disk dump on another disk. zip/gzip offer much better compression and
r245592r245593
205205filetype converts them all to .dsk format.
206206
207207msx_img are disk images with an extra byte at the beginning. It' 1 (0x01)
208for single-sided images and 2 (0x02) for double-side images. These
208for single-sided images and 2 (0x02) for double-side images. These
209209files are at: ftp://ftp.funet.fi/pub/msx/. The extension is .img
210210
211211msx_ddi are DiskDupe 5.12 disk images. There is a 0x1800 bytes header
r245592r245593
215215msx_msx are disk images with a weird sector order. You can find them
216216at: ftp://jazz.snu.ac.kr/pub/msx/. The extension is .msx
217217
218msx_mul are "multi disk" images, used by fmsx-dos 1.6. It is simply
218msx_mul are "multi disk" images, used by fmsx-dos 1.6. It is simply
219219more than one .dsk image appended to one another. The extension is
220still .dsk, but the file is larger than 720kB (actually always a
220still .dsk, but the file is larger than 720kB (actually always a
221221multiple of 720kB.
222222
223223
r245592r245593
235235The maximum card size is 1mb, and maximum file size is 64k.
236236(Files will be cut at 64k if they are larger - e.g. when putting a large file)
237237
238As far as I know there is no directory system, however there is always a
238As far as I know there is no directory system, however there is always a
239239system "NC100" directory which points to the root directory. (Like the DOS "."
240240directory).
241241
trunk/docs/m6502.txt
r245592r245593
3434                           |
3535        +------+--------+--+--+-------+-------+
3636        |      |        |     |       |       |
37      6510   deco16   6504   6509   n2a03   65c02
37      6510   deco16   6504   6509   n2a03   65c02
3838        |                                     |
3939  +-----+-----+                            r65c02
4040  |     |     |                               |
416510t  7501  8502                         +---+---+     
416510t  7501  8502                         +---+---+
4242                                          |       |
4343                                       65ce02   65sc02
4444                                          |
trunk/docs/windows.txt
r245592r245593
3030
3131   Specifies the name of the font to use for debugger windows. By default,
3232   the font is Lucida Console.
33   
33
3434-debugger_font_size <points> / -dfontsize <points>
3535
3636   Specifies the size of the font to use for debugger windows, in points.
3737   By default, this is set to 9pt.
38   
3938
4039
40
4141Windows performance options
4242---------------------------
4343
r245592r245593
5454   window and all DirectDraw/Direct3D code to execute on a second thread,
5555   which can improve performance on hyperthreaded and multicore systems.
5656   The default is OFF (-nomultithreading).
57   
57
5858-numprocessors <auto|value> / -np <auto|value>
5959
6060   Specify the number of processors to use for work queues. Specifying
61   "auto" will use the value reported by the system or environment
61   "auto" will use the value reported by the system or environment
6262   variable OSDPROCESSORS. To avoid abuse, this value is internally limited
63   to 4 times the number of processors reported by the system.
63   to 4 times the number of processors reported by the system.
6464   The default is "auto".
6565
6666-profile [n]
trunk/src/emu/cpu/i86/i86.txt
r245592r245593
11intel 8086 and compatibles
22--------------------------
33
4this info is here,
4this info is here,
55to list and give some remarks on all 8086 compatible processors
66
77excellent info in Hamarsoft's 86BUGS list
r245592r245593
121220 bit address bus, 16 bit data bus and registers
1313many 8080 assembler sources should be compilable/reusable
1414
158086
158086
1616----
17176 bytes prefetch queue
1818
19198088
2020----
218086 with 8 bit data bus,
218086 with 8 bit data bus,
2222prefetch queue only 4 byte, and refilled when 1 byte empty
2323
2424early 8086/8088 revisions bug
r245592r245593
939380286
9494-----
959580186 with additional instructions
9624 bit address bus,
9624 bit address bus,
9797protected mode
9898
999980386 and later
r245592r245593
106106
107107weitek, iit variants
108108
109in 80486 coprocessor integrated
109in 80486 coprocessor integrated
110110(except 80486sx and several clones)
11111180487: 80486 with other pinout
trunk/src/emu/sound/pokey.txt
r245592r245593
44                                  31 Jan 97
55
66The PokeySound Chip Emulator is designed to emulate the functionality of the
7Atari POKEY Chip Hardware through 'C' Sourcecode.  The emulator is able to
8produce sounds which are essentially identical to the original POKEY chip,
9including the exact distortions and pitches.
7Atari POKEY Chip Hardware through 'C' Sourcecode.  The emulator is able to
8produce sounds which are essentially identical to the original POKEY chip,
9including the exact distortions and pitches.
1010
1111The emulator is designed to run in a 32-bit environment.  Though it can be
12compiled and run in a 16-bit environment, it is slow. 
12compiled and run in a 16-bit environment, it is slow.
1313
1414I would like to give special thanks to Neil Bradley.  He provided excellent
1515testing support and was also the driving force behind the multiple POKEY
r245592r245593
26262) An adjustable gain.  The previous releases had a built-in gain of 64.
2727
28283) A clipping option.  Depending on the number of chips emulated and the
29   configured gain, it is possible for the output to exceed 8-bits. 
29   configured gain, it is possible for the output to exceed 8-bits.
3030   Clipping can be enabled to prevent this, though it does increase the
31   processing time.
31   processing time.
3232
3333
3434Standard Features:
r245592r245593
3636
3737The 'PokeySound' emulator supports the following functions:
3838
391) All polynomial sound generators:
391) All polynomial sound generators:
4040   a) 4-bit poly - actual bit pattern determined from sampled sound
4141   b) 5-bit poly - actual bit pattern determined from sampled sound
4242   c) 17-bit poly - simulated random bit pattern
4343   d) 9-bit poly - derived from simulated 17-bit poly
44   
44
45452) Full support of all 'Divide by N' counter clocks:
4646   a) 1.79 MHz (high limited to playback sample rate)
4747   b) 64 KHz (high limited to playback sample rate)
r245592r245593
5151   a) 8-bit - single channel
5252   b) 16-bit - double channel
5353
544) Full support of all distortions
544) Full support of all distortions
5555   a) 5-bit poly, then 17-bit poly
5656   b) 5-bit poly only
5757   c) 5-bit poly, then 4-bit poly
r245592r245593
5959   e) no poly counters (pure tone)
6060   f) 5-bit poly only
6161
625) Full support of volume control
625) Full support of volume control
6363
64646) Full support of all pitches - distortions will vary exactly as the
6565   original Atari based on different pitches
r245592r245593
8484left in for reference.  If you would still like to see the non-optimized
8585version, it's available in the 1.2 release.
8686
87One of the unique features of the emulator is that the processing time varies
88based on the frequency.  Since the routine only calculates new output values
89when a change is sensed, the lower frequencies (which change less frequently)
87One of the unique features of the emulator is that the processing time varies
88based on the frequency.  Since the routine only calculates new output values
89when a change is sensed, the lower frequencies (which change less frequently)
9090will require less processing time.
9191
9292
9393Differences Between the Emulator and the Actual POKEY Chip:
94----------------------------------------------------------- 
94-----------------------------------------------------------
9595
96The biggest difference between the emulator and the original hardware is
97that the emulator emulates an 'ideal' POKEY chip.  All output from the
96The biggest difference between the emulator and the original hardware is
97that the emulator emulates an 'ideal' POKEY chip.  All output from the
9898emulator is a based on a precise square wave, whereas the output from the
9999original chip has decay.  Though the output is slightly different, I
100100don't believe this difference is easily discernible.
101101
102102Another slight difference is the 17-bit/9-bit poly.  Since the polynomial
103103is large (2^17 bits), I choose to create the sample using a random number
104generator rather than a table.  I don't believe this difference is
104generator rather than a table.  I don't believe this difference is
105105significant.
106106
107107There are also a few differences which are introduced by aliasing.  This is
108108a direct result of using an output sampling rate which is not identical to
109the original sound rate.  It is most evident with high frequencies.
109the original sound rate.  It is most evident with high frequencies.
110110
111A final difference is the lack of support for the High-Pass Filter
111A final difference is the lack of support for the High-Pass Filter
112112functionality.  I plan to add this in a future release if necessary.
113113
114114
115115Sample/Test Application:
116116------------------------
117117
118The test program I've distributed is a 16-bit DOS application created with
119the Borland 'C' compiler.  The only reason I used 16-bit was because I
118The test program I've distributed is a 16-bit DOS application created with
119the Borland 'C' compiler.  The only reason I used 16-bit was because I
120120already had a set of working SB drivers in 16-bit.  Since the test system
121121is dedicated to generating sounds, the performance in 16-bit is more than
122122adequate.
r245592r245593
125125POKEY.C
126126=======
127127
128The POKEY.C file is the heart of the PokeySound Emulation program. 
128The POKEY.C file is the heart of the PokeySound Emulation program.
129129Although the routines in the file must work together, no other files are
130modules are required for operation.  A header file, 'POKEY.H', has
131been included for use in other modules, and provides the necessary
130modules are required for operation.  A header file, 'POKEY.H', has
131been included for use in other modules, and provides the necessary
132132function prototypes.  I've attempted to make the routines as portable as
133133possible, so the file should compile on almost any compiler with little
134or no modification. 
134or no modification.
135135
136136I have made some attempts at optimizing the routines, though I am sure
137137more optimization can be done.  They are currently only available in 'C'.
138I'll be happy to convert them to assembly language if desired.  Please feel
138I'll be happy to convert them to assembly language if desired.  Please feel
139139free to send me e-mail at rfries@tcmail.frco.com.
140140
141The routines are easy to use.  Detailed descriptions on the function calls   
141The routines are easy to use.  Detailed descriptions on the function calls
142142are listed below.
143143
144144The POKEY.C module can be compiled in a 32-bit or 16-bit environment.
r245592r245593
150150GENERAL OVERVIEW
151151----------------
152152
153On start-up of the system, a single call should be made to Pokey_sound_init. 
153On start-up of the system, a single call should be made to Pokey_sound_init.
154154This routine will prepare the structures for sound output.  This routine
155155can be called again if necessary during warm-start or other reset.
156156
157Once in the main loop, there are two other functions that will be used. 
157Once in the main loop, there are two other functions that will be used.
158158Whenever the system needs to write to either the AUDC or AUDF values,
159a call should be made to the Update_pokey_sound routine.  This routine will
159a call should be made to the Update_pokey_sound routine.  This routine will
160160take care of updating the internal registers.  It will pre-calculate several
161161values to help with optimization.
162162
163The only other routine that is called is the Pokey_process function.  This
163The only other routine that is called is the Pokey_process function.  This
164164function will fill a audio buffer with a specified number of bytes.  This
165165function should be called whenever a new audio buffer is required.
166166
r245592r245593
176176-----------------------------------------------------------------------
177177
178178This function initializes the structures used by the PokeySound routines.
179This function takes three parameters: the main clock frequency, the
179This function takes three parameters: the main clock frequency, the
180180playback frequency and the number of POKEY chips to emulate.
181181
182182The maximum number of POKEY chips emulated is configured at compile time.
183Though the maximum number of chips can be configured as one, the PokeySound
1841.2 routines are recommended if only a single chip is to be emulated since
185they have will provide better performance. 
183Though the maximum number of chips can be configured as one, the PokeySound
1841.2 routines are recommended if only a single chip is to be emulated since
185they have will provide better performance.
186186
187The main clock frequency is the frequency of the 1.79MHz source clock. 
188To provide exact results, freq17 should be set equal to 1789790 Hz.  As an
189alternative, freq17 can be set to an approximate frequency of 1787520 Hz. 
190Using this approximate frequency will reduce aliasing and thus produce a
187The main clock frequency is the frequency of the 1.79MHz source clock.
188To provide exact results, freq17 should be set equal to 1789790 Hz.  As an
189alternative, freq17 can be set to an approximate frequency of 1787520 Hz.
190Using this approximate frequency will reduce aliasing and thus produce a
191191clearer output signal.
192192
193193A constant has been defined for both of these values for your convenience.
194194The names are FREQ_17_EXACT and FREQ_17_APPROX.
195195
196The playback frequency is the frequency of the sound playback (the frequency
197used by the sound card).  For best results, the playback frequency should
196The playback frequency is the frequency of the sound playback (the frequency
197used by the sound card).  For best results, the playback frequency should
198198be an even division of the main clock frequency.  Since most of the sounds
199will be generated using the 64kHz clock, I also recommend making the
199will be generated using the 64kHz clock, I also recommend making the
200200playback frequency an even division of the 64kHz clock.
201201
202202The 64kHz clock is exactly equal to the main clock divided by 28.  For
203203the playback frequency, I recommend one of the following values:
204204
2051) FREQ_17_APPROX / (28*1), which is equal to 63840.  Of course, most sound
2051) FREQ_17_APPROX / (28*1), which is equal to 63840.  Of course, most sound
206206   cards can't reproduce this frequency.
207207
2082082) FREQ_17_APPROX / (28*2), which is equal to 31920.  All of the newer cards
209   will support this frequency. 
209   will support this frequency.
210210
2113) FREQ_17_APPROX / (28*3), which is equal to 21280.  All of the SB
2113) FREQ_17_APPROX / (28*3), which is equal to 21280.  All of the SB
212212   compatibles should support this frequency.
213213
2142144) FREQ_17_APPROX / (28*4), which is equal to 15960.  This may be the
215215   best choice, as it offers good sound reproduction with good performance.
216 
216
217217Of course, these options also assume you are using the approximate
218218frequency for the main clock as well.  Any of these choices will offer the
219219best results when the main 64kHz clock is used, reasonable results when the
r245592r245593
231231
232232This function should be called each time an AUDC, AUDF or AUDCTL value
233233changes.  This function takes four parameters: the address to change,
234the new value, the chip to be updated, and the gain to be used. 
234the new value, the chip to be updated, and the gain to be used.
235235The lower four bits of the address should be one of the following values:
236236
237237                  Addr     Description
r245592r245593
250250the address are used.  Note that this routine can no longer be called with
251251any address as it will affect the operation of the specified chip.
252252
253The routine pre-calculates several values that are needed by the
253The routine pre-calculates several values that are needed by the
254254processing function.  This is done to optimize performance.
255255
256The output will be amplified (multiplied) by gain/16 (previous releases had
257a built in multiplier of 4, which calculates to a gain value of 64).  If the
258output exceeds the maximum value after then gain and clipping is enabled,
256The output will be amplified (multiplied) by gain/16 (previous releases had
257a built in multiplier of 4, which calculates to a gain value of 64).  If the
258output exceeds the maximum value after then gain and clipping is enabled,
259259the output will be limited to reduce distortion.
260260
261261The best value for the gain depends on the number of POKEYs emulated and
262the maximum volume used.  The maximum possible output for each channel is 15,
263making the maximum possible output for a single chip to be 60.  Assuming all
264four channels on the chip are used at full volume, a gain of 64 can be used
265without distortion.  If 4 POKEY chips are emulated and all 16 channels are
266used at full volume, the gain must be no more than 16 to prevent distortion. 
267Of course, if only a few of the 16 channels are used or not all channels are
262the maximum volume used.  The maximum possible output for each channel is 15,
263making the maximum possible output for a single chip to be 60.  Assuming all
264four channels on the chip are used at full volume, a gain of 64 can be used
265without distortion.  If 4 POKEY chips are emulated and all 16 channels are
266used at full volume, the gain must be no more than 16 to prevent distortion.
267Of course, if only a few of the 16 channels are used or not all channels are
268268used at full volume, a larger gain can be used.
269269
270270To enable clipping, define the logical CLIP before compiling.  This is the
271271default mode of operation as it has already been included in the POKEY.H file.
272Note that this is only recommended if clipping is necessary since it will
272Note that this is only recommended if clipping is necessary since it will
273273impact the performance.
274274
275275This function has no return value (void).
r245592r245593
280280
281281This function calculates and fills a buffer with unsigned 8-bit mono audio.
282282This function takes two parameters: a pointer to the buffer to fill and
283the size of the buffer (limited to 65535).  This function fills the
283the size of the buffer (limited to 65535).  This function fills the
284284buffer based on the requested size and returns.  It automatically
285285updates the pointers for the next call, so subsequent calls to this function
286286will provide a continuous stream of data.
r245592r245593
292292
293293Selecting the correct buffer size is a careful balance.  Selecting a buffer
294294size that is too small will produce noticeable clicks in the output, though
295selecting a size that is too large will cause a poor response time and
295selecting a size that is too large will cause a poor response time and
296296possible delays in the system when the new buffer is filled.
297297
298298This function has no return value (void).
r245592r245593
303303
304304PokeySound is Copyright(c) 1996-1997 by Ron Fries
305305
306This library is free software; you can redistribute it and/or modify it under
307the terms of version 2 of the GNU Library General Public License as published
306This library is free software; you can redistribute it and/or modify it under
307the terms of version 2 of the GNU Library General Public License as published
308308by the Free Software Foundation.
309309
310This library is distributed in the hope that it will be useful, but WITHOUT
311ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
312FOR A PARTICULAR PURPOSE.  See the GNU Library General Public License for more
310This library is distributed in the hope that it will be useful, but WITHOUT
311ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
312FOR A PARTICULAR PURPOSE.  See the GNU Library General Public License for more
313313details.
314314
315To obtain a copy of the GNU Library General Public License, write to the Free
315To obtain a copy of the GNU Library General Public License, write to the Free
316316Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
317317
318Any permitted reproduction of these routines, in whole or in part, must bear
319this legend. 
318Any permitted reproduction of these routines, in whole or in part, must bear
319this legend.
trunk/src/mame/etc/template_readme.txt
r245592r245593
1The template family tree is an attempt to ease the pain to write CPUs/drivers/devices
2from scratch (especially for smaller projects).
1The template family tree is an attempt to ease the pain to write CPUs/drivers/devices
2from scratch (especially for smaller projects).
33
44===
55Usage:
trunk/src/osd/sdl/README_SDL20.txt
r245592r245593
1717* SDL2.0: sdlvideofps does not take -numscreens>1 into account.
1818* SDL1.3/WIN32: crashes with -rd d3d
1919* SDL1.3/WIN32: resizing does not work
20     
20
2121Build SDL 2.0 from HG
2222======================
2323
24Pull 2.0 from hg. Than
24Pull 2.0 from hg. Than
2525
2626sh autogen.sh
2727./configure --prefix=/usr/local/sdl13/ --disable-video-svga --enable-video-directfb --enable-fusionsound
28make
28make
2929[sudo] make install
3030
3131You may leave away the last two enables, if you do not want to play around with directfb - although it is lightning fast now :-)
r245592r245593
6666SDL13
6767=====
6868
69This is driver using SDL texture and line drawing support. It supports
70-prescale, -filter and -waitvsync.  The driver determines which pixel
71formats perform best and converts textures to these pixel formats and at
72the same time performs any necessary rotation. 
69This is driver using SDL texture and line drawing support. It supports
70-prescale, -filter and -waitvsync.  The driver determines which pixel
71formats perform best and converts textures to these pixel formats and at
72the same time performs any necessary rotation.
7373
7474Basic usage examples:
7575
76X11/opengl: ./mamed -video sdl13 -rd opengl mario
77DFB/DFB:    ./mamed -video sdl13 -vd directfb -rd directfb mario
76X11/opengl: ./mamed -video sdl13 -rd opengl mario
77DFB/DFB:    ./mamed -video sdl13 -vd directfb -rd directfb mario
7878
7979The performance of the directfb driver depends on the combined
8080support of the kernel framebuffer driver and the directfb driver.
r245592r245593
9393OpenGL:
9494=======
9595
96Plain opengl does work. Anything more advanced like pbo, fbo or glsl will
96Plain opengl does work. Anything more advanced like pbo, fbo or glsl will
9797most probably not work with more than one screen.
9898
9999   ./mamed -mt -video opengl mario -nogl_pbo -nogl_vbo -nogl_glsl -numscreens 2
r245592r245593
106106Using DirectFB, the following should get you going
107107
108108   ./mamed -mt -video soft -sm yuy2 -vd directfb -rd directfb mario
109   
110for accelerated blitting on the framebuffer - provided directfb supports it.
109
110for accelerated blitting on the framebuffer - provided directfb supports it.
111111At least my Radeon R480 is supported.
112112
113113-video soft and -scale_mode (-sm)
r245592r245593
121121
122122hwbest: Rendering in software/antialiased scaling with hardware (if supported)
123123
124yv12, yv12x2, yuy2, yuy2x2:
124yv12, yv12x2, yuy2, yuy2x2:
125125Rendering in software / scaling with hardware (if supported)
126126
127127Whether these are actually hardware accelerated depends on the SDL driver
128and the hardware. The SDL directfb driver supports all above if the hardware
129supports it. However, only one YUV-texture per display is supported.
128and the hardware. The SDL directfb driver supports all above if the hardware
129supports it. However, only one YUV-texture per display is supported.
130130The second window consequently will get "software" YUV blitting.
131
132     
trunk/src/osd/sdl/keymaps/km-ch.txt
r245592r245593
11# Keymap file for a swiss keyboard (Linux)
22#
3#
3#
44ITEM_ID_MINUS      SDLK_QUOTE   0x14 0x27   '
55ITEM_ID_EQUALS      SDLK_CARET   0x15 0x0    ^
66ITEM_ID_Y         SDLK_z      0x1d 0x7a    z
trunk/src/osd/sdl/keymaps/km-fr.txt
r245592r245593
Previous 199869 Revisions Next


© 1997-2024 The MAME Team