├── jni ├── Application.mk └── Android.mk ├── link.T ├── src ├── profiler.c ├── cpu │ ├── z80 │ │ └── z80dasm.h │ ├── i8x41 │ │ └── i8x41.c │ ├── hd6309 │ │ └── 6309dasm.c │ ├── m6809 │ │ └── 6809dasm.c │ ├── mips │ │ ├── dismips.mak │ │ └── dismips32.mak │ ├── g65816 │ │ ├── g65816o0.c │ │ ├── g65816o1.c │ │ ├── g65816o2.c │ │ ├── g65816o3.c │ │ ├── g65816o4.c │ │ └── g65816ds.h │ ├── tms9900 │ │ ├── tms9900.c │ │ ├── tms9995.c │ │ └── tms9980a.c │ ├── i86 │ │ ├── instrv30.h │ │ ├── host.h │ │ ├── instr286.h │ │ ├── v30.h │ │ ├── i88intf.h │ │ ├── i188intf.h │ │ ├── v33intf.h │ │ ├── v20intf.h │ │ ├── v30intf.h │ │ ├── i186intf.h │ │ ├── instr186.h │ │ └── i86intf.h │ ├── tms34010 │ │ └── makefile │ ├── nec │ │ └── nechost.h │ ├── spc700 │ │ └── spc700ds.h │ └── m68000_cyclone │ │ └── c68000.h ├── sha1.c ├── sha1.h ├── drivers │ ├── dec8.c │ ├── dynax.c │ ├── equites.c │ ├── gomoku.c │ ├── gstriker.c │ ├── segasyse.c │ └── shadfrce.c ├── vidhrdw │ ├── tlc34076.c │ ├── gomoku_vidhrdw.c │ ├── system1_vidhrdw.c │ ├── s2636.h │ ├── matrix3d.h │ ├── medlanes.h │ ├── lazercmd.h │ ├── tlc34076.h │ ├── beaminv_vidhrdw.c │ ├── voodoo.h │ ├── blockade_vidhrdw.c │ ├── m79amb_vidhrdw.c │ ├── avalnche_vidhrdw.c │ ├── 4enraya_vidhrdw.c │ ├── clayshoo_vidhrdw.c │ ├── truco_vidhrdw.c │ ├── segaic24.h │ └── diverboy_vidhrdw.c ├── libretro │ ├── libretro-common │ │ ├── audio │ │ │ └── dsp_filters │ │ │ │ ├── configure │ │ │ │ ├── link.T │ │ │ │ ├── HighShelfDampen.dsp │ │ │ │ ├── Tremolo.dsp │ │ │ │ ├── Vibrato.dsp │ │ │ │ ├── Crystalizer.dsp │ │ │ │ ├── Reverb.dsp │ │ │ │ ├── WahWah.dsp │ │ │ │ ├── BassBoost.dsp │ │ │ │ ├── Phaser.dsp │ │ │ │ ├── EchoReverb.dsp │ │ │ │ ├── Mono.dsp │ │ │ │ ├── Chorus.dsp │ │ │ │ ├── IIR.dsp │ │ │ │ ├── Panning.dsp │ │ │ │ ├── ChipTuneEnhance.dsp │ │ │ │ └── Echo.dsp │ │ ├── include │ │ │ ├── utils │ │ │ │ └── sha1.h │ │ │ └── libchdr │ │ │ │ ├── coretypes.h │ │ │ │ └── minmax.h │ │ ├── samples │ │ │ ├── net │ │ │ │ ├── http_test │ │ │ │ └── net_ifinfo │ │ │ └── file │ │ │ │ └── nbio │ │ │ │ └── Makefile │ │ ├── crt │ │ │ ├── include │ │ │ │ └── string.h │ │ │ └── string.c │ │ ├── glsym │ │ │ └── README.md │ │ ├── formats │ │ │ └── xml │ │ │ │ └── test │ │ │ │ └── Makefile │ │ ├── utils │ │ │ ├── djb2.c │ │ │ └── crc32.c │ │ └── libco │ │ │ ├── genode.cpp │ │ │ └── libco.c │ ├── log.h │ ├── osinline.h │ └── libretro_perf.h ├── includes │ ├── decocrpt.h │ ├── news.h │ ├── cninja.h │ ├── beaminv.h │ ├── canyon.h │ ├── taxidrvr.h │ ├── shuuz.h │ ├── relief.h │ ├── xybots.h │ ├── funkyjet.h │ ├── offtwall.h │ ├── crshrace.h │ ├── klax.h │ ├── lemmings.h │ ├── eprom.h │ ├── dogfgt.h │ ├── gcpinbal.h │ ├── badlands.h │ ├── thedeep.h │ ├── arcadecl.h │ ├── iqblock.h │ ├── atetris.h │ ├── epos.h │ ├── kinst.h │ ├── foodf.h │ ├── wwfwfest.h │ ├── realbrk.h │ ├── blstroid.h │ ├── vindictr.h │ ├── atarig1.h │ ├── lethalj.h │ ├── gauntlet.h │ ├── batman.h │ ├── cloak.h │ ├── cojag.h │ ├── dribling.h │ ├── tickee.h │ ├── lwings.h │ ├── exerion.h │ ├── toobin.h │ ├── clayshoo.h │ ├── thunderj.h │ ├── denjinmk.h │ ├── slapstic.h │ ├── rampart.h │ ├── appoooh.h │ ├── atarigx2.h │ ├── skullxbo.h │ ├── paradise.h │ ├── avalnche.h │ ├── arabian.h │ ├── leprechn.h │ ├── atarisy1.h │ ├── copsnrob.h │ ├── policetr.h │ ├── atarigt.h │ ├── atarisy2.h │ ├── f1gp.h │ ├── artmagic.h │ ├── capbowl.h │ ├── dominos.h │ ├── jedi.h │ ├── liberatr.h │ ├── aztarac.h │ ├── ccastles.h │ ├── sbrkout.h │ ├── meadows.h │ ├── tubep.h │ ├── jrpacman.h │ ├── atarig42.h │ ├── bsktball.h │ ├── missile.h │ ├── cloud9.h │ ├── segac2.h │ ├── kangaroo.h │ ├── bzone.h │ ├── gridlee.h │ ├── crgolf.h │ ├── espial.h │ ├── pacman.h │ ├── beathead.h │ ├── centiped.h │ ├── namconb1.h │ ├── pengo.h │ ├── subs.h │ ├── namcona1.h │ ├── cchasm.h │ ├── nitedrvr.h │ ├── unico.h │ ├── fromance.h │ ├── decoprot.h │ ├── lasso.h │ ├── homedata.h │ ├── midvunit.h │ ├── skydiver.h │ ├── irobot.h │ ├── berzerk.h │ ├── namcond1.h │ ├── kyugo.h │ ├── starwars.h │ ├── cps1.h │ ├── fastfred.h │ ├── taito_f3.h │ ├── namcos3d.h │ ├── itech8.h │ ├── firetrk.h │ ├── namcos22.h │ ├── mhavoc.h │ └── sega.h ├── machine │ ├── seicop.h │ ├── nmk004.h │ ├── scudsp.h │ ├── atari_vg.h │ ├── mathbox.h │ ├── asic65.h │ ├── tmp68301.h │ ├── am53cf96.h │ ├── pd4990a.h │ ├── random.h │ ├── 6532riot.h │ ├── m68kfmly.h │ ├── segacrpt.h │ ├── irem_cpu.h │ ├── tait8741.h │ ├── kyugo_machine.c │ ├── idectrl.h │ ├── rp5h01.h │ ├── segaic16.h │ └── mcr.h ├── sndhrdw │ ├── timeplt.h │ ├── irem.h │ ├── segasnd.h │ ├── cage.h │ ├── m72.h │ ├── williams.h │ ├── taitosnd.h │ ├── rastan_sndhrdw.c │ ├── dcs.h │ ├── bosco_sndhrdw.c │ ├── mario_sndhrdw.c │ └── aztarac_sndhrdw.c ├── datafile.h ├── info.h ├── hiscore.h ├── sound │ ├── namcona.h │ ├── sp0250.h │ ├── tiaintf.h │ ├── ics2115.h │ ├── wavwrite.h │ ├── x1_010.h │ ├── sn76496.h │ ├── k051649.h │ ├── c140.h │ ├── ymf271.h │ ├── k005289.h │ ├── astrocde.h │ ├── iremga20.h │ ├── gaelco.h │ ├── rf5c68.h │ ├── msm5232.h │ ├── psx.h │ ├── dac.h │ ├── scsp.h │ ├── qsound.h │ ├── tiaintf.c │ ├── streams.h │ ├── tms5220.h │ ├── multipcm.h │ ├── 5110intf.h │ ├── segapcm.h │ ├── bsmt2000.h │ ├── c6280.h │ ├── 5220intf.h │ ├── samples.h │ ├── saa1099.h │ ├── vlm5030.h │ ├── k053260.h │ ├── namco.h │ ├── tms5110.h │ ├── tms36xx.h │ ├── hc55516.h │ ├── ym2413.h │ └── upd7759.h ├── xml2info │ ├── intconfig.h │ └── xmltok_impl.h ├── cheat.h ├── lib │ └── libflac │ │ └── include │ │ └── share │ │ └── utf8.h ├── ost_samples.h ├── harddisk.h └── memdbg.h ├── .gitignore ├── deps └── zlib │ ├── gzfile.h │ ├── inffast.h │ └── gzclose.c ├── info └── km_mame2003_xtreme_amped_libretro.info └── .travis.yml /jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_ABI := all 2 | -------------------------------------------------------------------------------- /link.T: -------------------------------------------------------------------------------- 1 | { 2 | global: retro_*; 3 | local: *; 4 | }; 5 | 6 | -------------------------------------------------------------------------------- /src/profiler.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | #include "osinline.h" 3 | 4 | -------------------------------------------------------------------------------- /src/cpu/z80/z80dasm.h: -------------------------------------------------------------------------------- 1 | extern int DasmZ80(char *buffer, int PC); 2 | 3 | -------------------------------------------------------------------------------- /src/sha1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/sha1.c -------------------------------------------------------------------------------- /src/sha1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/sha1.h -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.bc 2 | *.js 3 | *.o 4 | *.exe 5 | *.dll 6 | *.so 7 | package.json 8 | .npmignore 9 | -------------------------------------------------------------------------------- /src/drivers/dec8.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/dec8.c -------------------------------------------------------------------------------- /src/cpu/i8x41/i8x41.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/cpu/i8x41/i8x41.c -------------------------------------------------------------------------------- /src/drivers/dynax.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/dynax.c -------------------------------------------------------------------------------- /src/drivers/equites.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/equites.c -------------------------------------------------------------------------------- /src/drivers/gomoku.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/gomoku.c -------------------------------------------------------------------------------- /src/drivers/gstriker.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/gstriker.c -------------------------------------------------------------------------------- /src/drivers/segasyse.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/segasyse.c -------------------------------------------------------------------------------- /src/drivers/shadfrce.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/drivers/shadfrce.c -------------------------------------------------------------------------------- /src/vidhrdw/tlc34076.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/vidhrdw/tlc34076.c -------------------------------------------------------------------------------- /src/cpu/hd6309/6309dasm.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/cpu/hd6309/6309dasm.c -------------------------------------------------------------------------------- /src/cpu/m6809/6809dasm.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/cpu/m6809/6809dasm.c -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/configure: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PACKAGE_NAME=retroarch-filters-audio -------------------------------------------------------------------------------- /src/vidhrdw/gomoku_vidhrdw.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/vidhrdw/gomoku_vidhrdw.c -------------------------------------------------------------------------------- /src/cpu/mips/dismips.mak: -------------------------------------------------------------------------------- 1 | dismips.exe: dismips.c mipsdasm.c 2 | gcc -O3 -I../../windows dismips.c -o../../../dismips 3 | -------------------------------------------------------------------------------- /src/vidhrdw/system1_vidhrdw.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/vidhrdw/system1_vidhrdw.c -------------------------------------------------------------------------------- /src/cpu/g65816/g65816o0.c: -------------------------------------------------------------------------------- 1 | #include "g65816cm.h" 2 | #define EXECUTION_MODE EXECUTION_MODE_M0X0 3 | #include "g65816op.h" 4 | -------------------------------------------------------------------------------- /src/cpu/g65816/g65816o1.c: -------------------------------------------------------------------------------- 1 | #include "g65816cm.h" 2 | #define EXECUTION_MODE EXECUTION_MODE_M0X1 3 | #include "g65816op.h" 4 | -------------------------------------------------------------------------------- /src/cpu/g65816/g65816o2.c: -------------------------------------------------------------------------------- 1 | #include "g65816cm.h" 2 | #define EXECUTION_MODE EXECUTION_MODE_M1X0 3 | #include "g65816op.h" 4 | -------------------------------------------------------------------------------- /src/cpu/g65816/g65816o3.c: -------------------------------------------------------------------------------- 1 | #include "g65816cm.h" 2 | #define EXECUTION_MODE EXECUTION_MODE_M1X1 3 | #include "g65816op.h" 4 | -------------------------------------------------------------------------------- /src/cpu/g65816/g65816o4.c: -------------------------------------------------------------------------------- 1 | #include "g65816cm.h" 2 | #define EXECUTION_MODE EXECUTION_MODE_E 3 | #include "g65816op.h" 4 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/link.T: -------------------------------------------------------------------------------- 1 | { 2 | global: dspfilter_get_implementation; 3 | local: *; 4 | }; 5 | -------------------------------------------------------------------------------- /src/includes/decocrpt.h: -------------------------------------------------------------------------------- 1 | void deco56_decrypt(int region); 2 | void deco74_decrypt(int region); 3 | void deco156_decrypt(void); 4 | -------------------------------------------------------------------------------- /src/machine/seicop.h: -------------------------------------------------------------------------------- 1 | extern UINT16 *cop_mcu_ram; 2 | 3 | READ16_HANDLER( denjinmk_mcu_r ); 4 | WRITE16_HANDLER( denjinmk_mcu_w ); 5 | -------------------------------------------------------------------------------- /src/machine/nmk004.h: -------------------------------------------------------------------------------- 1 | void NMK004_init(void); 2 | void NMK004_irq(int irq); 3 | READ16_HANDLER( NMK004_r ); 4 | WRITE16_HANDLER( NMK004_w ); 5 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/include/utils/sha1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/libretro/libretro-common/include/utils/sha1.h -------------------------------------------------------------------------------- /src/libretro/libretro-common/samples/net/http_test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/libretro/libretro-common/samples/net/http_test -------------------------------------------------------------------------------- /src/libretro/libretro-common/samples/net/net_ifinfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KMFDManic/mame2003-xtreme/HEAD/src/libretro/libretro-common/samples/net/net_ifinfo -------------------------------------------------------------------------------- /src/cpu/mips/dismips32.mak: -------------------------------------------------------------------------------- 1 | CFLAGS=$(CFLAGS) -DSTANDALONE= -I../../win32 2 | 3 | dismips.exe: dismips.obj 4 | link $** 5 | 6 | dismips.obj: dismips.c mipsdasm.c 7 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/HighShelfDampen.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = iir 3 | 4 | iir_gain = -12.0 5 | iir_type = HSH 6 | iir_frequency = 8000.0 7 | 8 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Tremolo.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = tremolo 3 | 4 | # Defaults. 5 | #tremolo_frequency = 4.0 6 | #tremolo_depth = 0.9 7 | 8 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Vibrato.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = vibrato 3 | 4 | # Defaults. 5 | #vibrato_frequency = 5.0 6 | #vibrato_depth = 0.5 7 | 8 | -------------------------------------------------------------------------------- /src/cpu/tms9900/tms9900.c: -------------------------------------------------------------------------------- 1 | /* 2 | Generate the tms9900 emulator 3 | */ 4 | 5 | #include "tms9900.h" 6 | 7 | #define TMS99XX_MODEL TMS9900_ID 8 | 9 | #include "99xxcore.h" 10 | -------------------------------------------------------------------------------- /src/cpu/tms9900/tms9995.c: -------------------------------------------------------------------------------- 1 | /* 2 | generate the tms9995 emulator 3 | */ 4 | 5 | #include "tms9900.h" 6 | 7 | #define TMS99XX_MODEL TMS9995_ID 8 | 9 | #include "99xxcore.h" 10 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Crystalizer.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = crystalizer 3 | # Controls dry/wet-ness of effect. 0.0 = none, 10.0 = max. 4 | crystalizer_intensity = 5.0 5 | -------------------------------------------------------------------------------- /deps/zlib/gzfile.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef _GZFILE_H 3 | #define _GZFILE_H 4 | 5 | struct gzFile_s 6 | { 7 | unsigned have; 8 | unsigned char *next; 9 | z_off64_t pos; 10 | }; 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /src/cpu/tms9900/tms9980a.c: -------------------------------------------------------------------------------- 1 | /* 2 | generate the tms9980a/tms9981 emulator 3 | */ 4 | 5 | #include "tms9900.h" 6 | 7 | #define TMS99XX_MODEL TMS9980_ID 8 | 9 | #include "99xxcore.h" 10 | -------------------------------------------------------------------------------- /src/includes/news.h: -------------------------------------------------------------------------------- 1 | extern data8_t *news_fgram; 2 | extern data8_t *news_bgram; 3 | 4 | WRITE_HANDLER( news_fgram_w ); 5 | WRITE_HANDLER( news_bgram_w ); 6 | WRITE_HANDLER( news_bgpic_w ); 7 | VIDEO_START( news ); 8 | VIDEO_UPDATE( news ); 9 | -------------------------------------------------------------------------------- /src/cpu/i86/instrv30.h: -------------------------------------------------------------------------------- 1 | static void PREFIXV30(_0fpre)(void); 2 | static void PREFIXV30(_repnc)(void); 3 | static void PREFIXV30(_repc)(void); 4 | static void PREFIXV30(_setalc)(void); 5 | #if 0 6 | static void PREFIXV30(_brks)(void); 7 | #endif 8 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Reverb.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = reverb 3 | 4 | # Defaults. 5 | # reverb_drytime = 0.43 6 | # reverb_wettime = 0.4 7 | # reverb_damping = 0.8 8 | # reverb_roomwidth = 0.56 9 | # reverb_roomsize = 0.56 10 | 11 | -------------------------------------------------------------------------------- /src/sndhrdw/timeplt.h: -------------------------------------------------------------------------------- 1 | extern const struct Memory_ReadAddress timeplt_sound_readmem[]; 2 | extern const struct Memory_WriteAddress timeplt_sound_writemem[]; 3 | extern struct AY8910interface timeplt_ay8910_interface; 4 | WRITE_HANDLER( timeplt_sh_irqtrigger_w ); 5 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/WahWah.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = wahwah 3 | 4 | # Defaults. 5 | # wahwah_lfo_freq = 1.5 6 | # wahwah_lfo_start_phase = 0.0 7 | # wahwah_freq_offset = 0.3 8 | # wahwah_depth = 0.7 9 | # wahwah_resonance = 2.5 10 | 11 | -------------------------------------------------------------------------------- /src/datafile.h: -------------------------------------------------------------------------------- 1 | #ifndef DATAFILE_H 2 | #define DATAFILE_H 3 | 4 | struct tDatafileIndex 5 | { 6 | long offset; 7 | const struct GameDriver *driver; 8 | }; 9 | 10 | extern int load_driver_history (const struct GameDriver *drv, char *buffer, int bufsize); 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/BassBoost.dsp: -------------------------------------------------------------------------------- 1 | filters = 2 2 | filter0 = iir 3 | filter1 = panning 4 | 5 | iir_gain = 10.0 6 | iir_type = BBOOST 7 | iir_frequency = 200.0 8 | 9 | # Avoids clipping. 10 | panning_left_mix = "0.3 0.0" 11 | panning_right_mix = "0.0 0.3" 12 | 13 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Phaser.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = phaser 3 | 4 | # Defaults. 5 | # phaser_lfo_freq = 0.4 6 | # phaser_lfo_start_phase = 0.0 7 | # phaser_feedback = 0.0 8 | # phaser_depth = 0.4 9 | # phaser_dry_wet = 0.5 10 | # phaser_stages = 2 11 | 12 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/crt/include/string.h: -------------------------------------------------------------------------------- 1 | #ifndef __LIBRETRO_SDK_CRT_STRING_H_ 2 | #define __LIBRETRO_SDK_CRT_STRING_H_ 3 | 4 | #include 5 | 6 | void *memcpy(void *dst, const void *src, size_t len); 7 | 8 | void *memset(void *b, int c, size_t len); 9 | 10 | #endif 11 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/EchoReverb.dsp: -------------------------------------------------------------------------------- 1 | filters = 2 2 | filter0 = echo 3 | filter1 = reverb 4 | 5 | echo_delay = "200" 6 | echo_feedback = "0.6" 7 | echo_amp = "0.25" 8 | 9 | reverb_roomwidth = 0.75 10 | reverb_roomsize = 0.75 11 | reverb_damping = 1.0 12 | reverb_wettime = 0.3 13 | -------------------------------------------------------------------------------- /src/includes/cninja.h: -------------------------------------------------------------------------------- 1 | VIDEO_START( cninja ); 2 | VIDEO_START( edrandy ); 3 | VIDEO_START( robocop2 ); 4 | VIDEO_START( stoneage ); 5 | VIDEO_START( mutantf ); 6 | VIDEO_UPDATE( cninja ); 7 | VIDEO_UPDATE( edrandy ); 8 | VIDEO_UPDATE( robocop2 ); 9 | VIDEO_UPDATE( mutantf ); 10 | VIDEO_EOF( cninja ); 11 | -------------------------------------------------------------------------------- /src/includes/beaminv.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Tekunon Kougyou Beam Invader hardware 4 | 5 | ***************************************************************************/ 6 | 7 | /* defined in vidhrdw/beaminv.c */ 8 | WRITE_HANDLER( beaminv_videoram_w ); 9 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Mono.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = panning 3 | 4 | # Gains are linear. 5 | 6 | # Stereo Mono: 7 | panning_left_mix = "0.5 0.5" 8 | panning_right_mix = "0.5 0.5" 9 | 10 | # Mono on one speaker: 11 | # panning_left_mix = "0.5 0.5" 12 | # panning_right_mix = "0.0 0.0" 13 | -------------------------------------------------------------------------------- /src/machine/scudsp.h: -------------------------------------------------------------------------------- 1 | /*SCU DSP stuff*/ 2 | 3 | extern void dsp_prg_ctrl(UINT32 data); 4 | extern void dsp_prg_data(UINT32 data); 5 | extern void dsp_ram_addr_ctrl(UINT32 data); 6 | extern void dsp_ram_addr_w(UINT32 data); 7 | extern UINT32 dsp_ram_addr_r(void); 8 | extern void dsp_execute_program(void); 9 | 10 | -------------------------------------------------------------------------------- /src/vidhrdw/s2636.h: -------------------------------------------------------------------------------- 1 | extern int s2636_x_offset; 2 | extern int s2636_y_offset; 3 | 4 | void s2636_w(unsigned char *workram,int offset,int data,unsigned char *dirty); 5 | void Update_Bitmap(struct mame_bitmap *bitmap,unsigned char *workram,unsigned char *dirty,int Graphics_Bank,struct mame_bitmap *collision_bitmap); 6 | 7 | -------------------------------------------------------------------------------- /src/info.h: -------------------------------------------------------------------------------- 1 | #ifndef __INFO_H 2 | #define __INFO_H 3 | 4 | /* Print the MAME database in INFO format */ 5 | void print_mame_info(FILE* out, const struct GameDriver* games[]); 6 | 7 | /* Print the MAME database in XML format */ 8 | void print_mame_xml(FILE* out, const struct GameDriver* games[]); 9 | 10 | #endif 11 | -------------------------------------------------------------------------------- /src/cpu/tms34010/makefile: -------------------------------------------------------------------------------- 1 | dis34010.exe : dis34010.o -lalleg 2 | gcc -m486 -O3 -ffast-math -fomit-frame-pointer -finline-functions dis34010.o -lalleg -o dis34010.exe 3 | 4 | dis34010.o : dis34010.c 34010dsm.c 5 | gcc -c -m486 -O3 -ffast-math -fomit-frame-pointer -finline-functions -I/mame/src -I/mame/src/msdos dis34010.c 6 | 7 | -------------------------------------------------------------------------------- /src/hiscore.h: -------------------------------------------------------------------------------- 1 | #ifndef HISCORE_H 2 | #define HISCORE_H 3 | 4 | void hs_open( const char *name ); 5 | void hs_init( void ); 6 | void hs_update( void ); 7 | void hs_close( void ); 8 | 9 | void computer_writemem_byte(int cpu, int addr, int value); 10 | int computer_readmem_byte(int cpu, int addr); 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /src/includes/canyon.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Canyon Bomber hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/canyon.c -----------*/ 8 | 9 | VIDEO_UPDATE( canyon ); 10 | -------------------------------------------------------------------------------- /src/sound/namcona.h: -------------------------------------------------------------------------------- 1 | /* namcona1.h */ 2 | #ifndef _NAMCONA_ 3 | #define _NAMCONA_ 4 | 5 | int NAMCONA_sh_start( const struct MachineSound *msound ); 6 | void NAMCONA_sh_stop( void ); 7 | 8 | struct NAMCONAinterface { 9 | int frequency; 10 | int region; 11 | int mixing_level; 12 | }; 13 | 14 | #endif 15 | -------------------------------------------------------------------------------- /src/sound/sp0250.h: -------------------------------------------------------------------------------- 1 | #ifndef __SP0250_H__ 2 | #define __SP0250_H__ 3 | 4 | struct sp0250_interface { 5 | int volume; 6 | void (*drq_callback)(int state); 7 | }; 8 | 9 | int sp0250_sh_start( const struct MachineSound *msound ); 10 | void sp0250_sh_stop( void ); 11 | 12 | WRITE_HANDLER( sp0250_w ); 13 | 14 | #endif 15 | -------------------------------------------------------------------------------- /src/includes/taxidrvr.h: -------------------------------------------------------------------------------- 1 | extern data8_t *taxidrvr_vram0,*taxidrvr_vram1,*taxidrvr_vram2,*taxidrvr_vram3; 2 | extern data8_t *taxidrvr_vram4,*taxidrvr_vram5,*taxidrvr_vram6,*taxidrvr_vram7; 3 | extern data8_t *taxidrvr_scroll; 4 | extern int taxidrvr_bghide; 5 | 6 | WRITE_HANDLER( taxidrvr_spritectrl_w ); 7 | 8 | VIDEO_UPDATE( taxidrvr ); 9 | -------------------------------------------------------------------------------- /src/includes/shuuz.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Shuuz hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/shuuz.c -----------*/ 8 | 9 | VIDEO_START( shuuz ); 10 | VIDEO_UPDATE( shuuz ); 11 | -------------------------------------------------------------------------------- /src/includes/relief.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari "Round" hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/relief.c -----------*/ 8 | 9 | VIDEO_START( relief ); 10 | VIDEO_UPDATE( relief ); 11 | -------------------------------------------------------------------------------- /src/includes/xybots.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Xybots hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/xybots.c -----------*/ 8 | 9 | VIDEO_START( xybots ); 10 | VIDEO_UPDATE( xybots ); 11 | -------------------------------------------------------------------------------- /src/includes/funkyjet.h: -------------------------------------------------------------------------------- 1 | VIDEO_START( funkyjet ); 2 | VIDEO_UPDATE( funkyjet ); 3 | 4 | WRITE16_HANDLER( funkyjet_pf2_data_w ); 5 | WRITE16_HANDLER( funkyjet_pf1_data_w ); 6 | WRITE16_HANDLER( funkyjet_control_0_w ); 7 | 8 | extern data16_t *funkyjet_pf1_data; 9 | extern data16_t *funkyjet_pf2_data; 10 | extern data16_t *funkyjet_pf1_row; 11 | -------------------------------------------------------------------------------- /src/includes/offtwall.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari "Round" hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/offtwall.c -----------*/ 8 | 9 | VIDEO_START( offtwall ); 10 | VIDEO_UPDATE( offtwall ); 11 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/glsym/README.md: -------------------------------------------------------------------------------- 1 | # Autogenerate GL extension loaders 2 | 3 | ## OpenGL desktop 4 | 5 | Use Khronos' recent [header](www.opengl.org/registry/api/glext.h). 6 | 7 | ./glgen.py /usr/include/GL/glext.h glsym_gl.h glsym_gl.c 8 | 9 | ## OpenGL ES 10 | 11 | ./glgen.py /usr/include/GLES2/gl2ext.h glsym_es2.h glsym_es2.c 12 | 13 | -------------------------------------------------------------------------------- /src/includes/crshrace.h: -------------------------------------------------------------------------------- 1 | extern data16_t *crshrace_videoram1,*crshrace_videoram2; 2 | 3 | WRITE16_HANDLER( crshrace_videoram1_w ); 4 | WRITE16_HANDLER( crshrace_videoram2_w ); 5 | WRITE16_HANDLER( crshrace_roz_bank_w ); 6 | WRITE16_HANDLER( crshrace_gfxctrl_w ); 7 | 8 | VIDEO_START( crshrace ); 9 | VIDEO_EOF( crshrace ); 10 | VIDEO_UPDATE( crshrace ); 11 | -------------------------------------------------------------------------------- /src/cpu/i86/host.h: -------------------------------------------------------------------------------- 1 | /*****************************************************************************/ 2 | /* host dependent types */ 3 | 4 | /*#define BIGCASE*/ 5 | 6 | #include "osd_cpu.h" 7 | 8 | typedef UINT8 BOOLEAN; 9 | 10 | typedef UINT8 BYTE; 11 | typedef UINT16 WORD; 12 | typedef UINT32 DWORD; 13 | -------------------------------------------------------------------------------- /src/cpu/nec/nechost.h: -------------------------------------------------------------------------------- 1 | /*****************************************************************************/ 2 | /* host dependent types */ 3 | 4 | #define BIGCASE 5 | 6 | #include "osd_cpu.h" 7 | 8 | typedef char BOOLEAN; 9 | 10 | typedef UINT8 BYTE; 11 | typedef UINT16 WORD; 12 | typedef UINT32 DWORD; 13 | -------------------------------------------------------------------------------- /src/includes/klax.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Klax hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/klax.c -----------*/ 8 | 9 | WRITE16_HANDLER( klax_latch_w ); 10 | 11 | VIDEO_START( klax ); 12 | VIDEO_UPDATE( klax ); 13 | -------------------------------------------------------------------------------- /src/includes/lemmings.h: -------------------------------------------------------------------------------- 1 | VIDEO_START( lemmings ); 2 | VIDEO_STOP( lemmings ); 3 | VIDEO_EOF( lemmings ); 4 | VIDEO_UPDATE( lemmings ); 5 | WRITE16_HANDLER( lemmings_pixel_0_w ); 6 | WRITE16_HANDLER( lemmings_pixel_1_w ); 7 | WRITE16_HANDLER( lemmings_vram_w ); 8 | 9 | extern data16_t *lemmings_pixel_0_data,*lemmings_pixel_1_data,*lemmings_vram_data,*lemmings_control_data; 10 | -------------------------------------------------------------------------------- /src/sndhrdw/irem.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Irem audio interface 4 | 5 | ****************************************************************************/ 6 | 7 | MACHINE_DRIVER_EXTERN( irem_audio ); 8 | 9 | WRITE_HANDLER( irem_sound_cmd_w ); 10 | 11 | extern struct Samplesinterface tr606_samples_interface; 12 | -------------------------------------------------------------------------------- /src/sound/tiaintf.h: -------------------------------------------------------------------------------- 1 | #ifndef TIA_H 2 | #define TIA_H 3 | 4 | #define TIA_DEFAULT_GAIN 16 5 | 6 | struct TIAinterface { 7 | unsigned int clock; 8 | int volume; 9 | int gain; 10 | int baseclock; 11 | }; 12 | 13 | int tia_sh_start (const struct MachineSound *msound); 14 | void tia_sh_stop (void); 15 | void tia_sh_update (void); 16 | 17 | #endif 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/machine/atari_vg.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari vector hardware 4 | 5 | ***************************************************************************/ 6 | 7 | READ_HANDLER( atari_vg_earom_r ); 8 | WRITE_HANDLER( atari_vg_earom_w ); 9 | WRITE_HANDLER( atari_vg_earom_ctrl_w ); 10 | 11 | NVRAM_HANDLER( atari_vg ); 12 | -------------------------------------------------------------------------------- /src/includes/eprom.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Escape hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/eprom.c -----------*/ 8 | 9 | VIDEO_START( eprom ); 10 | VIDEO_UPDATE( eprom ); 11 | 12 | void eprom_scanline_update(int scanline); 13 | -------------------------------------------------------------------------------- /src/machine/mathbox.h: -------------------------------------------------------------------------------- 1 | /* 2 | * mathbox.h: math box simulation (Battlezone/Red Baron/Tempest) 3 | * 4 | * Copyright 1991, 1992, 1993, 1996 Eric Smith 5 | * 6 | */ 7 | 8 | typedef short s16; 9 | typedef int s32; 10 | 11 | WRITE_HANDLER( mb_go_w ); 12 | READ_HANDLER( mb_status_r ); 13 | READ_HANDLER( mb_lo_r ); 14 | READ_HANDLER( mb_hi_r ); 15 | 16 | extern s16 mb_result; 17 | -------------------------------------------------------------------------------- /src/includes/dogfgt.h: -------------------------------------------------------------------------------- 1 | extern data8_t *dogfgt_bgvideoram; 2 | 3 | WRITE_HANDLER( dogfgt_plane_select_w ); 4 | READ_HANDLER( dogfgt_bitmapram_r ); 5 | WRITE_HANDLER( dogfgt_bitmapram_w ); 6 | WRITE_HANDLER( dogfgt_bgvideoram_w ); 7 | WRITE_HANDLER( dogfgt_scroll_w ); 8 | WRITE_HANDLER( dogfgt_1800_w ); 9 | 10 | PALETTE_INIT( dogfgt ); 11 | VIDEO_START( dogfgt ); 12 | VIDEO_UPDATE( dogfgt ); 13 | -------------------------------------------------------------------------------- /src/includes/gcpinbal.h: -------------------------------------------------------------------------------- 1 | VIDEO_START( gcpinbal ); 2 | VIDEO_EOF( gcpinbal ); 3 | VIDEO_UPDATE( gcpinbal ); 4 | 5 | WRITE16_HANDLER( gcpinbal_spritectrl_w ); 6 | WRITE16_HANDLER( gcpinbal_spriteflip_w ); 7 | READ16_HANDLER ( gcpinbal_tilemaps_word_r ); 8 | WRITE16_HANDLER( gcpinbal_tilemaps_word_w ); 9 | 10 | extern data16_t *gcpinbal_tilemapram; 11 | extern data16_t *gcpinbal_ioc_ram; 12 | 13 | -------------------------------------------------------------------------------- /src/sound/ics2115.h: -------------------------------------------------------------------------------- 1 | #ifndef __ICS2115_H__ 2 | #define __ICS2115_H__ 3 | 4 | struct ics2115_interface { 5 | int mixing_level[2]; 6 | int region; 7 | void (*irq_cb)(int); 8 | }; 9 | 10 | int ics2115_sh_start( const struct MachineSound *msound ); 11 | void ics2115_sh_stop( void ); 12 | void ics2115_reset( void ); 13 | 14 | READ_HANDLER( ics2115_r ); 15 | WRITE_HANDLER( ics2115_w ); 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /src/includes/badlands.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Bad Lands hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/badlands.c -----------*/ 8 | 9 | WRITE16_HANDLER( badlands_pf_bank_w ); 10 | 11 | VIDEO_START( badlands ); 12 | VIDEO_UPDATE( badlands ); 13 | -------------------------------------------------------------------------------- /src/includes/thedeep.h: -------------------------------------------------------------------------------- 1 | /* Variables defined in vidhrdw: */ 2 | 3 | extern data8_t *thedeep_vram_0, *thedeep_vram_1; 4 | extern data8_t *thedeep_scroll, *thedeep_scroll2; 5 | 6 | /* Functions defined in vidhrdw: */ 7 | 8 | WRITE_HANDLER( thedeep_vram_0_w ); 9 | WRITE_HANDLER( thedeep_vram_1_w ); 10 | 11 | PALETTE_INIT( thedeep ); 12 | VIDEO_START( thedeep ); 13 | VIDEO_UPDATE( thedeep ); 14 | 15 | -------------------------------------------------------------------------------- /src/includes/arcadecl.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Arcade Classics hardware (prototypes) 4 | 5 | *************************************************************************/ 6 | 7 | #include "rampart.h" 8 | 9 | 10 | /*----------- defined in vidhrdw/arcadecl.c -----------*/ 11 | 12 | VIDEO_START( arcadecl ); 13 | VIDEO_UPDATE( arcadecl ); 14 | -------------------------------------------------------------------------------- /src/includes/iqblock.h: -------------------------------------------------------------------------------- 1 | extern data8_t *iqblock_bgvideoram; 2 | extern data8_t *iqblock_fgvideoram; 3 | extern int iqblock_videoenable; 4 | extern int iqblock_vidhrdw_type; 5 | WRITE_HANDLER( iqblock_fgvideoram_w ); 6 | WRITE_HANDLER( iqblock_bgvideoram_w ); 7 | READ_HANDLER( iqblock_bgvideoram_r ); 8 | WRITE_HANDLER( iqblock_fgscroll_w ); 9 | 10 | VIDEO_START( iqblock ); 11 | VIDEO_UPDATE( iqblock ); 12 | -------------------------------------------------------------------------------- /src/includes/atetris.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Tetris hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atetris.c -----------*/ 8 | 9 | VIDEO_START( atetris ); 10 | VIDEO_UPDATE( atetris ); 11 | 12 | WRITE_HANDLER( atetris_videoram_w ); 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/includes/epos.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Epos games 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/epos.c -----------*/ 8 | 9 | PALETTE_INIT( epos ); 10 | 11 | WRITE_HANDLER( epos_videoram_w ); 12 | WRITE_HANDLER( epos_port_1_w ); 13 | 14 | VIDEO_UPDATE( epos ); 15 | -------------------------------------------------------------------------------- /src/vidhrdw/matrix3d.h: -------------------------------------------------------------------------------- 1 | void matrix3d_Multiply( double A[4][4], double B[4][4] ); 2 | void matrix3d_Identity( double M[4][4] ); 3 | void matrix3d_Translate( double M[4][4], double x, double y, double z ); 4 | void matrix3d_RotX( double M[4][4], double thx_sin, double thx_cos ); 5 | void matrix3d_RotY( double M[4][4], double thy_sin, double thy_cos ); 6 | void matrix3d_RotZ( double M[4][4], double thz_sin, double thz_cos ); 7 | -------------------------------------------------------------------------------- /src/includes/kinst.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Killer Instinct hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/kinst.c -----------*/ 8 | 9 | void kinst_buffer_vram(data32_t *base); 10 | 11 | PALETTE_INIT( kinst ); 12 | VIDEO_START( kinst ); 13 | VIDEO_UPDATE( kinst ); 14 | -------------------------------------------------------------------------------- /src/includes/foodf.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Food Fight hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/foodf.c -----------*/ 8 | 9 | WRITE16_HANDLER( foodf_paletteram_w ); 10 | 11 | void foodf_set_flip(int flip); 12 | VIDEO_START( foodf ); 13 | VIDEO_UPDATE( foodf ); 14 | -------------------------------------------------------------------------------- /src/sound/wavwrite.h: -------------------------------------------------------------------------------- 1 | void *wav_open(const char *filename, int sample_rate, int channels); 2 | void wav_close(void *wavptr); 3 | 4 | void wav_add_data_16(void *wavptr, INT16 *data, int samples); 5 | void wav_add_data_32(void *wavptr, INT32 *data, int samples, int shift); 6 | void wav_add_data_16lr(void *wavptr, INT16 *left, INT16 *right, int samples); 7 | void wav_add_data_32lr(void *wavptr, INT32 *left, INT32 *right, int samples, int shift); 8 | -------------------------------------------------------------------------------- /src/machine/asic65.h: -------------------------------------------------------------------------------- 1 | /************************************* 2 | * 3 | * Implementation of ASIC65 4 | * 5 | *************************************/ 6 | 7 | #define ASIC65_STANDARD 0 8 | #define ASIC65_STEELTAL 1 9 | #define ASIC65_GUARDIANS 2 10 | 11 | void asic65_config(int asictype); 12 | void asic65_reset(int state); 13 | WRITE16_HANDLER( asic65_data_w ); 14 | READ16_HANDLER( asic65_r ); 15 | READ16_HANDLER( asic65_io_r ); 16 | -------------------------------------------------------------------------------- /src/machine/tmp68301.h: -------------------------------------------------------------------------------- 1 | #ifndef TMP68301_H 2 | #define TMP68301_H 3 | 4 | #include "driver.h" 5 | 6 | // Machine init 7 | MACHINE_INIT( tmp68301 ); 8 | 9 | // Hardware Registers 10 | extern data16_t *tmp68301_regs; 11 | WRITE16_HANDLER( tmp68301_regs_w ); 12 | 13 | // Interrupts 14 | void tmp68301_external_interrupt_0(void); 15 | void tmp68301_external_interrupt_1(void); 16 | void tmp68301_external_interrupt_2(void); 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /src/includes/wwfwfest.h: -------------------------------------------------------------------------------- 1 | extern data16_t *wwfwfest_fg0_videoram, *wwfwfest_bg0_videoram, *wwfwfest_bg1_videoram; 2 | extern int wwfwfest_pri; 3 | extern int wwfwfest_bg0_scrollx, wwfwfest_bg0_scrolly, wwfwfest_bg1_scrollx, wwfwfest_bg1_scrolly; 4 | 5 | VIDEO_START( wwfwfest ); 6 | VIDEO_UPDATE( wwfwfest ); 7 | WRITE16_HANDLER( wwfwfest_fg0_videoram_w ); 8 | WRITE16_HANDLER( wwfwfest_bg0_videoram_w ); 9 | WRITE16_HANDLER( wwfwfest_bg1_videoram_w ); 10 | -------------------------------------------------------------------------------- /src/includes/realbrk.h: -------------------------------------------------------------------------------- 1 | #ifndef REALBRK_H 2 | #define REALBRK_H 3 | 4 | VIDEO_START(realbrk); 5 | VIDEO_UPDATE(realbrk); 6 | 7 | WRITE16_HANDLER( realbrk_vram_0_w ); 8 | WRITE16_HANDLER( realbrk_vram_1_w ); 9 | WRITE16_HANDLER( realbrk_vram_2_w ); 10 | WRITE16_HANDLER( realbrk_vregs_w ); 11 | WRITE16_HANDLER( realbrk_flipscreen_w ); 12 | 13 | extern data16_t *realbrk_vram_0, *realbrk_vram_1, *realbrk_vram_2, *realbrk_vregs; 14 | 15 | #endif 16 | 17 | -------------------------------------------------------------------------------- /src/libretro/log.h: -------------------------------------------------------------------------------- 1 | #ifndef LOG_H 2 | #define LOG_H 3 | 4 | #include 5 | 6 | /****************************************************************************** 7 | 8 | Shared libretro log interface 9 | set in mame2003.c 10 | 11 | ******************************************************************************/ 12 | 13 | #define LOGPRE "[MAME Xtreme] " 14 | 15 | extern retro_log_printf_t log_cb; 16 | 17 | #endif /* LOG_H */ -------------------------------------------------------------------------------- /src/includes/blstroid.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Blasteroids hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/blstroid.c -----------*/ 8 | 9 | VIDEO_START( blstroid ); 10 | VIDEO_UPDATE( blstroid ); 11 | 12 | void blstroid_scanline_update(int scanline); 13 | 14 | extern data16_t *blstroid_priorityram; 15 | -------------------------------------------------------------------------------- /src/includes/vindictr.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Vindicators hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/vindictr.c -----------*/ 8 | 9 | WRITE16_HANDLER( vindictr_paletteram_w ); 10 | 11 | VIDEO_START( vindictr ); 12 | VIDEO_UPDATE( vindictr ); 13 | 14 | void vindictr_scanline_update(int scanline); 15 | -------------------------------------------------------------------------------- /src/sound/x1_010.h: -------------------------------------------------------------------------------- 1 | struct x1_010_interface 2 | { 3 | int clock; /* clock */ 4 | int volume; /* volume */ 5 | int adr; /* address */ 6 | }; 7 | 8 | 9 | READ_HANDLER ( seta_sound_r ); 10 | WRITE_HANDLER( seta_sound_w ); 11 | 12 | READ16_HANDLER ( seta_sound_word_r ); 13 | WRITE16_HANDLER( seta_sound_word_w ); 14 | 15 | void seta_sound_enable_w(int); 16 | 17 | int seta_sh_start( const struct MachineSound *msound ); 18 | void seta_sh_stop( void ); 19 | -------------------------------------------------------------------------------- /src/xml2info/intconfig.h: -------------------------------------------------------------------------------- 1 | #ifndef INTCONFIG_H 2 | #define INTCONFIG_H 3 | 4 | #include 5 | #include 6 | 7 | #define XML_NS 1 8 | #define XML_DTD 1 9 | #define XML_CONTEXT_BYTES 1024 10 | 11 | #ifdef USE_LSB 12 | #define BYTEORDER 1234 13 | #else 14 | #define BYTEORDER 4321 15 | #endif 16 | 17 | #define HAVE_MEMMOVE 18 | 19 | #define XMLPARSEAPI(type) type 20 | 21 | #include "expat.h" 22 | 23 | #undef XMLPARSEAPI 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Chorus.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = chorus 3 | 4 | # Controls the base delay of the chorus (milliseconds). 5 | # chorus_delay_ms = 25.0 6 | # 7 | # Controls the depth of the delay. The delay will vary between delay_ms +/- depth_ms. 8 | # chorus_depth_ms = 1.0 9 | # 10 | # Frequency of LFO which controls delay. 11 | # chorus_lfo_freq = 0.5 12 | # 13 | # Controls dry/wet-ness of effect. 1.0 = full chorus, 0.0 = no chorus. 14 | # chorus_drywet = 0.8 15 | -------------------------------------------------------------------------------- /src/sound/sn76496.h: -------------------------------------------------------------------------------- 1 | #ifndef SN76496_H 2 | #define SN76496_H 3 | 4 | #define MAX_76496 4 5 | 6 | struct SN76496interface 7 | { 8 | int num; /* total number of 76496 in the machine */ 9 | int baseclock[MAX_76496]; 10 | int volume[MAX_76496]; 11 | }; 12 | 13 | int SN76496_sh_start(const struct MachineSound *msound); 14 | WRITE_HANDLER( SN76496_0_w ); 15 | WRITE_HANDLER( SN76496_1_w ); 16 | WRITE_HANDLER( SN76496_2_w ); 17 | WRITE_HANDLER( SN76496_3_w ); 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /src/includes/atarig1.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari G1 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atarig1.c -----------*/ 8 | 9 | WRITE16_HANDLER( atarig1_mo_control_w ); 10 | 11 | VIDEO_START( atarig1 ); 12 | VIDEO_UPDATE( atarig1 ); 13 | 14 | void atarig1_scanline_update(int param); 15 | 16 | extern UINT8 atarig1_pitfight; 17 | -------------------------------------------------------------------------------- /src/includes/lethalj.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | The Game Room Lethal Justice hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/lethalj.c -----------*/ 8 | 9 | READ16_HANDLER( lethalj_gun_r ); 10 | 11 | PALETTE_INIT( lethalj ); 12 | VIDEO_START( lethalj ); 13 | 14 | WRITE16_HANDLER( lethalj_blitter_w ); 15 | 16 | VIDEO_UPDATE( lethalj ); 17 | -------------------------------------------------------------------------------- /src/includes/gauntlet.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Gauntlet hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/gauntlet.c -----------*/ 8 | 9 | extern UINT8 vindctr2_screen_refresh; 10 | 11 | WRITE16_HANDLER( gauntlet_xscroll_w ); 12 | WRITE16_HANDLER( gauntlet_yscroll_w ); 13 | 14 | VIDEO_START( gauntlet ); 15 | VIDEO_UPDATE( gauntlet ); 16 | -------------------------------------------------------------------------------- /src/vidhrdw/medlanes.h: -------------------------------------------------------------------------------- 1 | #define HORZ_RES 32 2 | #define VERT_RES 24 3 | #define HORZ_CHR 8 4 | #define VERT_CHR 10 5 | #define VERT_FNT 8 6 | 7 | #define HORZ_BAR 0x40 8 | #define VERT_BAR 0x80 9 | 10 | #define MARKER0_ACTIVE 0x03 11 | #define MARKER1_ACTIVE 0x04 12 | #define MARKER0_VERT 0x08 13 | #define MARKER0_HORZ 0x09 14 | #define MARKER1_VERT 0x0a 15 | #define MARKER1_HORZ 0x0b 16 | 17 | #define MARKER_HORZ_ADJ -1 18 | #define MARKER_VERT_ADJ -10 19 | 20 | -------------------------------------------------------------------------------- /src/includes/batman.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Batman hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/batman.c -----------*/ 8 | 9 | extern UINT8 batman_alpha_tile_bank; 10 | extern INT32 mm2_startup; 11 | 12 | VIDEO_START( batman ); 13 | VIDEO_UPDATE( batman ); 14 | VIDEO_START( mm2 ); 15 | VIDEO_UPDATE( mm2 ); 16 | 17 | void batman_scanline_update(int scanline); 18 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/include/libchdr/coretypes.h: -------------------------------------------------------------------------------- 1 | #ifndef __CORETYPES_H__ 2 | #define __CORETYPES_H__ 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | typedef uint64_t UINT64; 9 | #ifndef OSD_CPU_H 10 | typedef uint32_t UINT32; 11 | typedef uint16_t UINT16; 12 | typedef uint8_t UINT8; 13 | #endif 14 | 15 | typedef int64_t INT64; 16 | #ifndef OSD_CPU_H 17 | typedef int32_t INT32; 18 | typedef int16_t INT16; 19 | typedef int8_t INT8; 20 | #endif 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /src/libretro/osinline.h: -------------------------------------------------------------------------------- 1 | //============================================================ 2 | // 3 | // osinline.h - Win32 inline functions 4 | // 5 | //============================================================ 6 | 7 | #ifndef __OSINLINE__ 8 | #define __OSINLINE__ 9 | 10 | #include "osd_cpu.h" 11 | 12 | 13 | //============================================================ 14 | // INLINE FUNCTIONS 15 | //============================================================ 16 | 17 | #endif /* __OSINLINE__ */ 18 | -------------------------------------------------------------------------------- /src/includes/cloak.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Cloak & Dagger hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/ccastles.c -----------*/ 8 | 9 | WRITE_HANDLER( cloak_paletteram_w ); 10 | READ_HANDLER( graph_processor_r ); 11 | WRITE_HANDLER( graph_processor_w ); 12 | WRITE_HANDLER( cloak_clearbmp_w ); 13 | 14 | VIDEO_START( cloak ); 15 | VIDEO_UPDATE( cloak ); 16 | -------------------------------------------------------------------------------- /src/includes/cojag.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari CoJag hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/cojag.c -----------*/ 8 | 9 | READ32_HANDLER( cojag_blitter_r ); 10 | WRITE32_HANDLER( cojag_blitter_w ); 11 | 12 | READ16_HANDLER( cojag_tom_regs_r ); 13 | WRITE16_HANDLER( cojag_tom_regs_w ); 14 | 15 | VIDEO_START( cojag ); 16 | VIDEO_UPDATE( cojag ); 17 | -------------------------------------------------------------------------------- /info/km_mame2003_xtreme_amped_libretro.info: -------------------------------------------------------------------------------- 1 | display_name = "ARC (km_MAME 2003 Xtreme Amped)" 2 | authors = "MAMEdev" 3 | supported_extensions = "zip" 4 | corename = "MAME 2003 Xtreme Amped (2K23)" 5 | manufacturer = "Various" 6 | categories = "Emulator" 7 | systemname = "Arcade (various)" 8 | systemid = "mame" 9 | database = "MAME 2003 Xtreme|MAME 2003" 10 | license = "MAME" 11 | permissions = "" 12 | display_version = "2K23" 13 | supports_no_game = "false" 14 | notes = "(!) The BIOS files must be inside the ROM directory.|" 15 | -------------------------------------------------------------------------------- /src/cpu/i86/instr286.h: -------------------------------------------------------------------------------- 1 | #define ILLEGAL_INSTRUCTION 6 2 | #define GENERAL_PROTECTION_FAULT 0xd 3 | 4 | #define PM (I.msw&1) 5 | #define CPL (I.sregs[CS]&3) 6 | #define IOPL ((I.flags&0x3000)>>12) 7 | 8 | static void i286_trap2(int number); 9 | static void i286_interrupt_descriptor(UINT16 number); 10 | static void i286_code_descriptor(UINT16 selector, UINT16 offset); 11 | static void i286_data_descriptor(int reg, UINT16 selector); 12 | static void PREFIX286(_0fpre)(void); 13 | static void PREFIX286(_arpl)(void); 14 | -------------------------------------------------------------------------------- /src/includes/dribling.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Model Racing Dribbling hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in drivers/dribling.c -----------*/ 8 | 9 | extern data8_t dribling_abca; 10 | 11 | 12 | /*----------- defined in vidhrdw/dribling.c -----------*/ 13 | 14 | PALETTE_INIT( dribling ); 15 | WRITE_HANDLER( dribling_colorram_w ); 16 | VIDEO_UPDATE( dribling ); 17 | -------------------------------------------------------------------------------- /src/vidhrdw/lazercmd.h: -------------------------------------------------------------------------------- 1 | #define HORZ_RES 32 2 | #define VERT_RES 24 3 | #define HORZ_CHR 8 4 | #define VERT_CHR 10 5 | #define VERT_FNT 8 6 | 7 | #define HORZ_BAR 0x40 8 | #define VERT_BAR 0x80 9 | 10 | #define MARKER_ACTIVE_L 0x03 11 | #define MARKER_ACTIVE_R 0x04 12 | #define MARKER_VERT_R 0x0a 13 | #define MARKER_HORZ_L 0x0b 14 | #define MARKER_VERT_L 0x0c 15 | #define MARKER_HORZ_R 0x0d 16 | 17 | #define MARKER_HORZ_ADJ -1 18 | #define MARKER_VERT_ADJ -10 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/cheat.h: -------------------------------------------------------------------------------- 1 | /********************************************************************* 2 | 3 | cheat.h 4 | 5 | *********************************************************************/ 6 | 7 | #ifndef CHEAT_H 8 | #define CHEAT_H 9 | 10 | extern int he_did_cheat; 11 | 12 | void InitCheat(void); 13 | void StopCheat(void); 14 | 15 | int cheat_menu(struct mame_bitmap *bitmap, int selection); 16 | void DoCheat(struct mame_bitmap *bitmap); 17 | 18 | void DisplayWatches(struct mame_bitmap * bitmap); 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /src/includes/tickee.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Raster Elite Tickee Tickats hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in driver/tickee.c -----------*/ 8 | 9 | extern data16_t *tickee_control; 10 | 11 | 12 | /*----------- defined in vidhrdw/tickee.c -----------*/ 13 | 14 | extern data16_t *tickee_vram; 15 | 16 | VIDEO_START( tickee ); 17 | 18 | VIDEO_UPDATE( tickee ); 19 | -------------------------------------------------------------------------------- /src/sound/k051649.h: -------------------------------------------------------------------------------- 1 | #ifndef k051649_h 2 | #define k051649_h 3 | 4 | struct k051649_interface 5 | { 6 | int master_clock; /* master clock */ 7 | int volume; /* playback volume */ 8 | }; 9 | 10 | int K051649_sh_start(const struct MachineSound *msound); 11 | void K051649_sh_stop(void); 12 | 13 | WRITE_HANDLER( K051649_waveform_w ); 14 | WRITE_HANDLER( K051649_volume_w ); 15 | WRITE_HANDLER( K051649_frequency_w ); 16 | WRITE_HANDLER( K051649_keyonoff_w ); 17 | WRITE_HANDLER( K052539_waveform_w ); 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /deps/zlib/inffast.h: -------------------------------------------------------------------------------- 1 | /* inffast.h -- header to use inffast.c 2 | * Copyright (C) 1995-2003, 2010 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* WARNING: this file should *not* be used by applications. It is 7 | part of the implementation of the compression library and is 8 | subject to change. Applications should only use zlib.h. 9 | */ 10 | #ifndef _INFFAST_H 11 | #define _INFFAST_H 12 | 13 | void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start)); 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /src/includes/lwings.h: -------------------------------------------------------------------------------- 1 | extern unsigned char *lwings_fgvideoram; 2 | extern unsigned char *lwings_bg1videoram; 3 | 4 | WRITE_HANDLER( lwings_fgvideoram_w ); 5 | WRITE_HANDLER( lwings_bg1videoram_w ); 6 | WRITE_HANDLER( lwings_bg1_scrollx_w ); 7 | WRITE_HANDLER( lwings_bg1_scrolly_w ); 8 | WRITE_HANDLER( trojan_bg2_scrollx_w ); 9 | WRITE_HANDLER( trojan_bg2_image_w ); 10 | VIDEO_START( lwings ); 11 | VIDEO_START( trojan ); 12 | VIDEO_START( avengers ); 13 | VIDEO_UPDATE( lwings ); 14 | VIDEO_UPDATE( trojan ); 15 | VIDEO_EOF( lwings ); 16 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/IIR.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = iir 3 | 4 | # Defaults. 5 | #iir_frequency = 1024.0 6 | #iir_quality = 0.707 7 | #iir_gain = 0.0 8 | #iir_type = LPF 9 | 10 | # Filter types: 11 | # LPF: Low-pass 12 | # HPF: High-pass 13 | # BPCSGF: Band-pass #1 14 | # BPZPGF: Band-pass #2 15 | # APF: Allpass 16 | # NOTCH: Notch filter 17 | # RIAA_phono: RIAA record/tape deemphasis 18 | # PEQ: peaking band EQ 19 | # BBOOST: Bassboost 20 | # LSH: Low-shelf 21 | # HSH: High-shelf 22 | # RIAA_CD: CD de-emphasis 23 | 24 | -------------------------------------------------------------------------------- /src/sound/c140.h: -------------------------------------------------------------------------------- 1 | /* C140.h */ 2 | 3 | #ifndef _NAMCO_C140_ 4 | #define _NAMCO_C140_ 5 | 6 | int C140_sh_start( const struct MachineSound *msound ); 7 | void C140_sh_stop( void ); 8 | void C140_sh_update( void ); 9 | READ_HANDLER( C140_r ); 10 | WRITE_HANDLER( C140_w ); 11 | 12 | enum 13 | { 14 | C140_TYPE_SYSTEM2, 15 | C140_TYPE_SYSTEM21_A, 16 | C140_TYPE_SYSTEM21_B 17 | }; 18 | 19 | struct C140interface { 20 | int banking_type; 21 | int frequency; 22 | int region; 23 | int mixing_level; 24 | }; 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/includes/exerion.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Jaleco Exerion 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/exerion.c -----------*/ 8 | 9 | PALETTE_INIT( exerion ); 10 | VIDEO_START( exerion ); 11 | VIDEO_UPDATE( exerion ); 12 | 13 | WRITE_HANDLER( exerion_videoreg_w ); 14 | WRITE_HANDLER( exerion_video_latch_w ); 15 | READ_HANDLER( exerion_video_timing_r ); 16 | 17 | extern UINT8 exerion_cocktail_flip; 18 | -------------------------------------------------------------------------------- /src/includes/toobin.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Toobin' hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/toobin.c -----------*/ 8 | 9 | WRITE16_HANDLER( toobin_paletteram_w ); 10 | WRITE16_HANDLER( toobin_intensity_w ); 11 | WRITE16_HANDLER( toobin_xscroll_w ); 12 | WRITE16_HANDLER( toobin_yscroll_w ); 13 | WRITE16_HANDLER( toobin_slip_w ); 14 | 15 | VIDEO_START( toobin ); 16 | VIDEO_UPDATE( toobin ); 17 | -------------------------------------------------------------------------------- /src/includes/clayshoo.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari Clay Shoot hardware 4 | 5 | driver by Zsolt Vasvari 6 | 7 | ****************************************************************************/ 8 | 9 | /* defined in machine/clayshoo.c */ 10 | 11 | MACHINE_INIT( clayshoo ); 12 | WRITE_HANDLER( clayshoo_analog_reset_w ); 13 | READ_HANDLER( clayshoo_analog_r ); 14 | 15 | 16 | /* defined in vidhrdw/clayshoo.c */ 17 | 18 | PALETTE_INIT( clayshoo ); 19 | WRITE_HANDLER( clayshoo_videoram_w ); 20 | -------------------------------------------------------------------------------- /src/includes/thunderj.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari ThunderJaws hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/thunderj.c -----------*/ 8 | 9 | extern UINT8 thunderj_alpha_tile_bank; 10 | 11 | VIDEO_START( thunderj ); 12 | VIDEO_UPDATE( thunderj ); 13 | 14 | void thunderj_mark_high_palette(struct mame_bitmap *bitmap, UINT16 *pf, UINT16 *mo, int x, int y); 15 | void thunderj_scanline_update(int scanline); 16 | -------------------------------------------------------------------------------- /src/includes/denjinmk.h: -------------------------------------------------------------------------------- 1 | /*----------- defined in video/denjinmk.c -----------*/ 2 | 3 | extern UINT16 *denjinmk_back_data,*denjinmk_fore_data,*denjinmk_mid_data,*denjinmk_scrollram16,*denjinmk_textram; 4 | extern UINT8 grainbow_pri_n; 5 | extern UINT16 denjinmk_layer_disable; 6 | 7 | 8 | void denjinmk_setgfxbank(UINT16 data); 9 | WRITE16_HANDLER( denjinmk_background_w ); 10 | WRITE16_HANDLER( denjinmk_foreground_w ); 11 | WRITE16_HANDLER( denjinmk_midground_w ); 12 | WRITE16_HANDLER( denjinmk_text_w ); 13 | 14 | 15 | VIDEO_START( denjinmk ); 16 | VIDEO_UPDATE( denjinmk ); 17 | -------------------------------------------------------------------------------- /src/includes/slapstic.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Slapstic decoding helper 4 | 5 | ************************************************************************** 6 | 7 | For more information on the slapstic, see slapstic.html, or go to 8 | http://www.aarongiles.com/slapstic.html 9 | 10 | *************************************************************************/ 11 | 12 | void slapstic_init(int chip); 13 | void slapstic_reset(void); 14 | 15 | int slapstic_bank(void); 16 | int slapstic_tweak(offs_t offset); 17 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Panning.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = panning 3 | 4 | # Gains are linear. 5 | 6 | # The default. Left and right channels map to each other. 7 | panning_left_mix = "1.0 0.0" 8 | panning_right_mix = "0.0 1.0" 9 | 10 | # Some examples: 11 | # 12 | # Mono: 13 | # panning_left_mix = "0.5 0.5" 14 | # panning_right_mix = "0.5 0.5" 15 | 16 | # Swap left and right channels: 17 | # panning_left_mix = "0.0 1.0" 18 | # panning_right_mix = "1.0 0.0" 19 | # 20 | # Mono on one speaker: 21 | # panning_left_mix = "0.5 0.5" 22 | # panning_right_mix = "0.0 0.0" 23 | 24 | -------------------------------------------------------------------------------- /src/vidhrdw/tlc34076.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | tlc34076.h 4 | 5 | Basic implementation of the TLC34076 palette chip and similar 6 | compatible chips. 7 | 8 | ***************************************************************************/ 9 | 10 | void tlc34076_reset(int dacwidth); 11 | 12 | READ_HANDLER( tlc34076_r ); 13 | WRITE_HANDLER( tlc34076_w ); 14 | 15 | READ16_HANDLER( tlc34076_lsb_r ); 16 | WRITE16_HANDLER( tlc34076_lsb_w ); 17 | READ16_HANDLER( tlc34076_msb_r ); 18 | WRITE16_HANDLER( tlc34076_msb_w ); 19 | 20 | -------------------------------------------------------------------------------- /src/includes/rampart.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Rampart hardware 4 | 5 | *************************************************************************/ 6 | 7 | 8 | /*----------- defined in vidhrdw/rampart.c -----------*/ 9 | 10 | WRITE16_HANDLER( rampart_bitmap_w ); 11 | 12 | VIDEO_START( rampart ); 13 | VIDEO_UPDATE( rampart ); 14 | 15 | int rampart_bitmap_init(int _xdim, int _ydim); 16 | void rampart_bitmap_render(struct mame_bitmap *bitmap, const struct rectangle *cliprect); 17 | 18 | extern data16_t *rampart_bitmap; 19 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/formats/xml/test/Makefile: -------------------------------------------------------------------------------- 1 | TARGET := rxml 2 | 3 | LIBRETRO_XML_DIR := .. 4 | LIBRETRO_COMM_DIR := ../../.. 5 | 6 | SOURCES := \ 7 | rxml_test.c \ 8 | $(LIBRETRO_XML_DIR)/rxml.c \ 9 | $(LIBRETRO_COMM_DIR)/streams/file_stream.c 10 | 11 | OBJS := $(SOURCES:.c=.o) 12 | 13 | CFLAGS += -DRXML_TEST -Wall -pedantic -std=gnu99 -g -I$(LIBRETRO_COMM_DIR)/include 14 | 15 | all: $(TARGET) 16 | 17 | %.o: %.c 18 | $(CC) -c -o $@ $< $(CFLAGS) 19 | 20 | $(TARGET): $(OBJS) 21 | $(CC) -o $@ $^ $(LDFLAGS) 22 | 23 | clean: 24 | rm -f $(TARGET) $(OBJS) 25 | 26 | .PHONY: clean 27 | 28 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/utils/djb2.c: -------------------------------------------------------------------------------- 1 | /* public domain */ 2 | /* gcc -O3 -o djb2 djb2.c */ 3 | 4 | #include 5 | #include 6 | 7 | static uint32_t djb2(const char* str) 8 | { 9 | const unsigned char* aux = (const unsigned char*)str; 10 | uint32_t hash = 5381; 11 | 12 | while (*aux) 13 | hash = (hash << 5) + hash + *aux++; 14 | 15 | return hash; 16 | } 17 | 18 | int main(int argc, const char* argv[]) 19 | { 20 | int i; 21 | 22 | for (i = 1; i < argc; i++) 23 | printf( "0x%08xU: %s\n", djb2( argv[ i ] ), argv[ i ] ); 24 | 25 | return 0; 26 | } 27 | -------------------------------------------------------------------------------- /src/machine/am53cf96.h: -------------------------------------------------------------------------------- 1 | /* 2 | * am53cf96.h 3 | * 4 | */ 5 | 6 | #if !defined( AM53CF96_H ) 7 | #define AM53CF96_H ( 1 ) 8 | 9 | #define AM53CF96_DEVICE_HDD (0) 10 | #define AM53CF96_DEVICE_CDROM (1) 11 | 12 | struct AM53CF96interface 13 | { 14 | int device; /* device type */ 15 | void (*irq_callback)(void); /* irq callback */ 16 | }; 17 | 18 | extern void am53cf96_init( struct AM53CF96interface *interface ); 19 | extern void am53cf96_read_data(int bytes, data8_t *pData); 20 | extern READ32_HANDLER( am53cf96_r ); 21 | extern WRITE32_HANDLER( am53cf96_w ); 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /src/includes/appoooh.h: -------------------------------------------------------------------------------- 1 | /* appoooh.h */ 2 | 3 | extern unsigned char *spriteram,*spriteram_2; 4 | 5 | /* vidhrdw */ 6 | extern unsigned char *appoooh_fg_videoram,*appoooh_fg_colorram; 7 | extern unsigned char *appoooh_bg_videoram,*appoooh_bg_colorram; 8 | WRITE_HANDLER( appoooh_fg_videoram_w ); 9 | WRITE_HANDLER( appoooh_fg_colorram_w ); 10 | WRITE_HANDLER( appoooh_bg_videoram_w ); 11 | WRITE_HANDLER( appoooh_bg_colorram_w ); 12 | PALETTE_INIT( appoooh ); 13 | WRITE_HANDLER( appoooh_scroll_w ); 14 | WRITE_HANDLER( appoooh_out_w ); 15 | VIDEO_START( appoooh ); 16 | VIDEO_UPDATE( appoooh ); 17 | 18 | -------------------------------------------------------------------------------- /src/includes/atarigx2.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari G42 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atarigx2.c -----------*/ 8 | 9 | extern UINT16 atarigx2_playfield_base; 10 | extern UINT16 atarigx2_motion_object_base; 11 | extern UINT16 atarigx2_motion_object_mask; 12 | 13 | VIDEO_START( atarigx2 ); 14 | VIDEO_UPDATE( atarigx2 ); 15 | 16 | WRITE16_HANDLER( atarigx2_mo_control_w ); 17 | 18 | void atarigx2_scanline_update(int scanline); 19 | -------------------------------------------------------------------------------- /src/includes/skullxbo.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Skull & Crossbones hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/skullxbo.c -----------*/ 8 | 9 | WRITE16_HANDLER( skullxbo_playfieldlatch_w ); 10 | WRITE16_HANDLER( skullxbo_xscroll_w ); 11 | WRITE16_HANDLER( skullxbo_yscroll_w ); 12 | WRITE16_HANDLER( skullxbo_mobmsb_w ); 13 | 14 | VIDEO_START( skullxbo ); 15 | VIDEO_UPDATE( skullxbo ); 16 | 17 | void skullxbo_scanline_update(int param); 18 | -------------------------------------------------------------------------------- /src/includes/paradise.h: -------------------------------------------------------------------------------- 1 | /* Variables defined in vidhrdw: */ 2 | 3 | extern data8_t *paradise_vram_0,*paradise_vram_1,*paradise_vram_2; 4 | 5 | /* Functions defined in vidhrdw: */ 6 | 7 | WRITE_HANDLER( paradise_vram_0_w ); 8 | WRITE_HANDLER( paradise_vram_1_w ); 9 | WRITE_HANDLER( paradise_vram_2_w ); 10 | 11 | WRITE_HANDLER( paradise_flipscreen_w ); 12 | WRITE_HANDLER( paradise_palette_w ); 13 | WRITE_HANDLER( paradise_pixmap_w ); 14 | 15 | WRITE_HANDLER( paradise_priority_w ); 16 | WRITE_HANDLER( paradise_palbank_w ); 17 | 18 | VIDEO_START( paradise ); 19 | VIDEO_UPDATE( paradise ); 20 | 21 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/include/libchdr/minmax.h: -------------------------------------------------------------------------------- 1 | /* license:BSD-3-Clause 2 | * copyright-holders:Aaron Giles 3 | *************************************************************************** 4 | 5 | minmax.h 6 | 7 | ***************************************************************************/ 8 | 9 | #pragma once 10 | 11 | #ifndef __MINMAX_H__ 12 | #define __MINMAX_H__ 13 | 14 | #if defined(RARCH_INTERNAL) || defined(__LIBRETRO__) 15 | #include 16 | #else 17 | #define MAX(x, y) (((x) > (y)) ? (x) : (y)) 18 | #define MIN(x, y) ((x) < (y) ? (x) : (y)) 19 | #endif 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/sound/ymf271.h: -------------------------------------------------------------------------------- 1 | #ifndef _YMF271_H_ 2 | #define _YMF271_H_ 3 | 4 | #define MAX_YMF271 (2) 5 | 6 | struct YMF271interface 7 | { 8 | int num; 9 | int region[MAX_YMF271]; /* memory region of sample ROMs */ 10 | int mixing_level[MAX_YMF271]; /* volume */ 11 | void (*irq_callback[MAX_YMF271])(int state); /* irq callback */ 12 | }; 13 | 14 | int YMF271_sh_start( const struct MachineSound *msound ); 15 | void YMF271_sh_stop( void ); 16 | 17 | READ_HANDLER( YMF271_0_r ); 18 | WRITE_HANDLER( YMF271_0_w ); 19 | READ_HANDLER( YMF271_1_r ); 20 | WRITE_HANDLER( YMF271_1_w ); 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /src/sound/k005289.h: -------------------------------------------------------------------------------- 1 | #ifndef k005289_h 2 | #define k005289_h 3 | 4 | struct k005289_interface 5 | { 6 | int master_clock; /* clock speed */ 7 | int volume; /* playback volume */ 8 | int region; /* memory region */ 9 | }; 10 | 11 | int K005289_sh_start(const struct MachineSound *msound); 12 | void K005289_sh_stop(void); 13 | 14 | WRITE_HANDLER( k005289_control_A_w ); 15 | WRITE_HANDLER( k005289_control_B_w ); 16 | WRITE_HANDLER( k005289_pitch_A_w ); 17 | WRITE_HANDLER( k005289_pitch_B_w ); 18 | WRITE_HANDLER( k005289_keylatch_A_w ); 19 | WRITE_HANDLER( k005289_keylatch_B_w ); 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/includes/avalnche.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Avalanche hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/avalnche.c -----------*/ 8 | 9 | READ_HANDLER( avalnche_input_r ); 10 | WRITE_HANDLER( avalnche_output_w ); 11 | WRITE_HANDLER( avalnche_noise_amplitude_w ); 12 | INTERRUPT_GEN( avalnche_interrupt ); 13 | 14 | 15 | /*----------- defined in vidhrdw/avalnche.c -----------*/ 16 | 17 | WRITE_HANDLER( avalnche_videoram_w ); 18 | VIDEO_UPDATE( avalnche ); 19 | -------------------------------------------------------------------------------- /src/sound/astrocde.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef ASTROCADE_H 3 | #define ASTROCADE_H 4 | 5 | #define MAX_ASTROCADE_CHIPS 2 /* max number of emulated chips */ 6 | 7 | struct astrocade_interface 8 | { 9 | int num; /* total number of sound chips in the machine */ 10 | int baseclock; /* astrocade clock rate */ 11 | int volume[MAX_ASTROCADE_CHIPS]; /* master volume */ 12 | }; 13 | 14 | int astrocade_sh_start(const struct MachineSound *msound); 15 | void astrocade_sh_stop(void); 16 | void astrocade_sh_update(void); 17 | 18 | WRITE_HANDLER( astrocade_sound1_w ); 19 | WRITE_HANDLER( astrocade_sound2_w ); 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/libretro/libretro_perf.h: -------------------------------------------------------------------------------- 1 | #ifndef _LIBRETRO_PERF_H 2 | #define _LIBRETRO_PERF_H 3 | 4 | #include "libretro.h" 5 | 6 | #ifdef LOG_PERFORMANCE 7 | #define RETRO_PERFORMANCE_INIT(perf_cb, name) static struct retro_perf_counter name = {#name}; if (!name.registered) perf_cb.perf_register(&(name)) 8 | #define RETRO_PERFORMANCE_START(perf_cb, name) perf_cb.perf_start(&(name)) 9 | #define RETRO_PERFORMANCE_STOP(perf_cb, name) perf_cb.perf_stop(&(name)) 10 | #else 11 | #define RETRO_PERFORMANCE_INIT(perf_cb, name) 12 | #define RETRO_PERFORMANCE_START(perf_cb, name) 13 | #define RETRO_PERFORMANCE_STOP(perf_cb, name) 14 | #endif 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /src/sound/iremga20.h: -------------------------------------------------------------------------------- 1 | /********************************************************* 2 | 3 | Irem GA20 PCM Sound Chip 4 | 5 | *********************************************************/ 6 | #ifndef __IREMGA20_H__ 7 | #define __IREMGA20_H__ 8 | 9 | struct IremGA20_interface { 10 | int clock; /* clock */ 11 | int region; /* memory region of sample ROM(s) */ 12 | int mixing_level[2]; /* volume */ 13 | }; 14 | 15 | int IremGA20_sh_start( const struct MachineSound *msound ); 16 | void IremGA20_sh_stop( void ); 17 | WRITE_HANDLER( IremGA20_w ); 18 | READ_HANDLER( IremGA20_r ); 19 | 20 | #endif /* __IREMGA20_H__ */ 21 | -------------------------------------------------------------------------------- /src/includes/arabian.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Sun Electronics Arabian hardware 4 | 5 | driver by Dan Boris 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | 11 | 12 | /*----------- defined in vidhrdw/arabian.c -----------*/ 13 | 14 | extern UINT8 arabian_video_control; 15 | extern UINT8 arabian_flip_screen; 16 | 17 | PALETTE_INIT( arabian ); 18 | VIDEO_START( arabian ); 19 | VIDEO_UPDATE( arabian ); 20 | 21 | WRITE_HANDLER( arabian_blitter_w ); 22 | WRITE_HANDLER( arabian_videoram_w ); 23 | -------------------------------------------------------------------------------- /src/sound/gaelco.h: -------------------------------------------------------------------------------- 1 | #ifndef gaelco_snd_h 2 | #define gaelco_snd_h 3 | 4 | struct gaelcosnd_interface 5 | { 6 | int region; /* memory region */ 7 | int banks[4]; /* start of each ROM bank */ 8 | int volume[2]; /* playback volume */ 9 | }; 10 | 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | 15 | int gaelco_cg1v_sh_start(const struct MachineSound *msound); 16 | int gaelco_gae1_sh_start(const struct MachineSound *msound); 17 | void gaelcosnd_sh_stop(void); 18 | 19 | WRITE16_HANDLER( gaelcosnd_w ); 20 | READ16_HANDLER( gaelcosnd_r ); 21 | 22 | #ifdef __cplusplus 23 | } 24 | #endif 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/ChipTuneEnhance.dsp: -------------------------------------------------------------------------------- 1 | filters = 4 2 | filter0 = eq 3 | filter1 = reverb 4 | filter2 = iir 5 | filter3 = panning 6 | 7 | eq_frequencies = "32 64 125 250 500 1000 2000 4000 8000 16000 20000" 8 | eq_gains = "6 9 12 7 6 5 7 9 11 6 0" 9 | 10 | # Reverb - slight reverb 11 | reverb_drytime = 0.5 12 | reverb_wettime = 0.15 13 | reverb_damping = 0.8 14 | reverb_roomwidth = 0.25 15 | reverb_roomsize = 0.25 16 | 17 | # IIR - filters out some harsh sounds on the upper end 18 | iir_type = RIAA_CD 19 | 20 | # Panning - cut the volume a bit 21 | panning_left_mix = "0.75 0.0" 22 | panning_right_mix = "0.0 0.75" 23 | -------------------------------------------------------------------------------- /src/sndhrdw/segasnd.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Sega g80 common sound hardware 4 | 5 | *************************************************************************/ 6 | 7 | WRITE_HANDLER( sega_sh_speechboard_w ); 8 | 9 | extern const struct Memory_ReadAddress sega_speechboard_readmem[]; 10 | extern const struct Memory_WriteAddress sega_speechboard_writemem[]; 11 | extern const struct IO_ReadPort sega_speechboard_readport[]; 12 | extern const struct IO_WritePort sega_speechboard_writeport[]; 13 | 14 | extern struct sp0250_interface sega_sp0250_interface; 15 | 16 | -------------------------------------------------------------------------------- /src/sound/rf5c68.h: -------------------------------------------------------------------------------- 1 | /*********************************************************/ 2 | /* ricoh RF5C68(or clone) PCM controller */ 3 | /*********************************************************/ 4 | #ifndef __RF5C68_H__ 5 | #define __RF5C68_H__ 6 | 7 | struct RF5C68interface 8 | { 9 | int clock; 10 | int volume; 11 | }; 12 | /******************************************/ 13 | WRITE_HANDLER( RF5C68_reg_w ); 14 | 15 | READ_HANDLER( RF5C68_r ); 16 | WRITE_HANDLER( RF5C68_w ); 17 | 18 | int RF5C68_sh_start( const struct MachineSound *msound ); 19 | void RF5C68_sh_stop( void ); 20 | #endif 21 | /**************** end of file ****************/ 22 | -------------------------------------------------------------------------------- /src/includes/leprechn.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Leprechaun/Pot of Gold 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/leprechn.c -----------*/ 8 | 9 | DRIVER_INIT( leprechn ); 10 | READ_HANDLER( leprechn_sh_0805_r ); 11 | 12 | 13 | /*----------- defined in vidhrdw/leprechn.c -----------*/ 14 | 15 | PALETTE_INIT( leprechn ); 16 | VIDEO_START( leprechn ); 17 | 18 | WRITE_HANDLER( leprechn_graphics_command_w ); 19 | READ_HANDLER( leprechn_videoram_r ); 20 | WRITE_HANDLER( leprechn_videoram_w ); 21 | -------------------------------------------------------------------------------- /src/machine/pd4990a.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Header file for the PD4990A Serial I/O calendar & clock. 3 | */ 4 | 5 | 6 | struct pd4990a_s 7 | { 8 | int seconds; 9 | int minutes; 10 | int hours; 11 | int days; 12 | int month; 13 | int year; 14 | int weekday; 15 | }; 16 | 17 | extern struct pd4990a_s pd4990a; 18 | 19 | void pd4990a_addretrace (void); 20 | void pd4990a_init(void); 21 | READ_HANDLER( pd4990a_testbit_r ); 22 | READ_HANDLER( pd4990a_databit_r ); 23 | void pd4990a_control_w(unsigned short); 24 | WRITE16_HANDLER( pd4990a_control_16_w ); 25 | void pd4990a_increment_day(void); 26 | void pd4990a_increment_month(void); 27 | 28 | -------------------------------------------------------------------------------- /src/machine/random.h: -------------------------------------------------------------------------------- 1 | /*********************************************************** 2 | 3 | random.h 4 | 5 | Mame's own random number generator. 6 | For now, this is the Mersenne Twister. 7 | 8 | ***********************************************************/ 9 | 10 | #ifndef MAME_RAND_H 11 | #define MAME_RAND_H 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | /* initializes random number generator with a seed */ 18 | void mame_srand(unsigned long s); 19 | 20 | /* generates a random number on [0,0xffffffff]-interval */ 21 | unsigned long mame_rand(void); 22 | 23 | #ifdef __cplusplus 24 | } 25 | #endif 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /src/sound/msm5232.h: -------------------------------------------------------------------------------- 1 | #ifndef _H_MSM5232_ 2 | #define _H_MSM5232_ 3 | 4 | #define MAX_MSM5232 2 5 | 6 | struct MSM5232interface 7 | { 8 | int num; /* total number of chips */ 9 | int baseclock; /* in Hz, master clock 1 and 2 (default = 2119040 Hz) */ 10 | double capacity[MAX_MSM5232][8]; /* in Farads, capacitors connected to pins: 24,25,26,27 and 37,38,39,40 */ 11 | int mixing_level[MAX_MSM5232]; /* master volume */ 12 | }; 13 | 14 | int MSM5232_sh_start (const struct MachineSound *msound); 15 | void MSM5232_sh_stop (void); 16 | void MSM5232_sh_reset (void); 17 | 18 | WRITE_HANDLER( MSM5232_0_w ); 19 | WRITE_HANDLER( MSM5232_1_w ); 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/includes/atarisy1.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari System 1 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atarisy1.c -----------*/ 8 | 9 | extern data16_t *atarisy1_bankselect; 10 | 11 | READ16_HANDLER( atarisy1_int3state_r ); 12 | 13 | WRITE16_HANDLER( atarisy1_spriteram_w ); 14 | WRITE16_HANDLER( atarisy1_bankselect_w ); 15 | WRITE16_HANDLER( atarisy1_xscroll_w ); 16 | WRITE16_HANDLER( atarisy1_yscroll_w ); 17 | WRITE16_HANDLER( atarisy1_priority_w ); 18 | 19 | VIDEO_START( atarisy1 ); 20 | VIDEO_UPDATE( atarisy1 ); 21 | -------------------------------------------------------------------------------- /src/includes/copsnrob.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Cops'n Robbers hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/copsnrob.c -----------*/ 8 | 9 | READ_HANDLER( copsnrob_gun_position_r ); 10 | 11 | 12 | /*----------- defined in vidhrdw/copsnrob.c -----------*/ 13 | 14 | extern unsigned char *copsnrob_bulletsram; 15 | extern unsigned char *copsnrob_carimage; 16 | extern unsigned char *copsnrob_cary; 17 | extern unsigned char *copsnrob_trucky; 18 | extern unsigned char *copsnrob_truckram; 19 | 20 | VIDEO_UPDATE( copsnrob ); 21 | -------------------------------------------------------------------------------- /src/includes/policetr.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | P&P Marketing Police Trainer hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in drivers/policetr.c -----------*/ 8 | 9 | extern data32_t * policetr_rambase; 10 | 11 | 12 | /*----------- defined in vidhrdw/policetr.c -----------*/ 13 | 14 | WRITE32_HANDLER( policetr_video_w ); 15 | READ32_HANDLER( policetr_video_r ); 16 | 17 | WRITE32_HANDLER( policetr_palette_offset_w ); 18 | WRITE32_HANDLER( policetr_palette_data_w ); 19 | 20 | VIDEO_START( policetr ); 21 | VIDEO_UPDATE( policetr ); 22 | -------------------------------------------------------------------------------- /src/machine/6532riot.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | RIOT 6532 emulation 4 | 5 | ***************************************************************************/ 6 | 7 | #include "memory.h" 8 | 9 | 10 | struct R6532interface 11 | { 12 | mem_read_handler portA_r; 13 | mem_read_handler portB_r; 14 | 15 | mem_write_handler portA_w; 16 | mem_write_handler portB_w; 17 | }; 18 | 19 | 20 | extern void r6532_init(int n, const struct R6532interface* RI); 21 | 22 | extern READ_HANDLER( r6532_0_r ); 23 | extern READ_HANDLER( r6532_1_r ); 24 | 25 | extern WRITE_HANDLER( r6532_0_w ); 26 | extern WRITE_HANDLER( r6532_1_w ); 27 | -------------------------------------------------------------------------------- /src/includes/atarigt.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari GT hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atarigt.c -----------*/ 8 | 9 | extern UINT8 atarigt_is_primrage; 10 | 11 | 12 | /*----------- defined in vidhrdw/atarigt.c -----------*/ 13 | 14 | extern data16_t *atarigt_colorram; 15 | 16 | void atarigt_colorram_w(offs_t address, data16_t data, data16_t mem_mask); 17 | data16_t atarigt_colorram_r(offs_t address); 18 | 19 | VIDEO_START( atarigt ); 20 | VIDEO_UPDATE( atarigt ); 21 | 22 | void atarigt_scanline_update(int scanline); 23 | -------------------------------------------------------------------------------- /src/sndhrdw/cage.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari CAGE Audio Board 4 | 5 | ****************************************************************************/ 6 | 7 | #define CAGE_IRQ_REASON_DATA_READY (1) 8 | #define CAGE_IRQ_REASON_BUFFER_EMPTY (2) 9 | 10 | MACHINE_DRIVER_EXTERN( cage ); 11 | MACHINE_DRIVER_EXTERN( cage_seattle ); 12 | 13 | void cage_init(int boot_region, offs_t speedup); 14 | void cage_set_irq_handler(void (*irqhandler)(int)); 15 | void cage_reset_w(int state); 16 | 17 | UINT16 main_from_cage_r(void); 18 | UINT16 cage_control_r(void); 19 | void main_to_cage_w(UINT16 data); 20 | void cage_control_w(UINT16 data); 21 | -------------------------------------------------------------------------------- /src/sound/psx.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | PSX SPU 4 | 5 | preliminary version by smf. 6 | 7 | ***************************************************************************/ 8 | 9 | #if !defined( PSX_SPU_H ) 10 | 11 | extern int PSX_sh_start( const struct MachineSound *msound ); 12 | extern void PSX_sh_stop( void ); 13 | extern void PSX_sh_update( void ); 14 | extern void PSX_sh_reset( void ); 15 | READ32_HANDLER( psx_spu_r ); 16 | READ32_HANDLER( psx_spu_delay_r ); 17 | WRITE32_HANDLER( psx_spu_w ); 18 | 19 | struct PSXSPUinterface 20 | { 21 | int num; 22 | int baseclock; 23 | }; 24 | 25 | #define PSX_SPU_H ( 1 ) 26 | #endif 27 | -------------------------------------------------------------------------------- /src/includes/atarisy2.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari System 2 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/atarisy2.c -----------*/ 8 | 9 | READ16_HANDLER( atarisy2_slapstic_r ); 10 | READ16_HANDLER( atarisy2_videoram_r ); 11 | 12 | WRITE16_HANDLER( atarisy2_slapstic_w ); 13 | WRITE16_HANDLER( atarisy2_yscroll_w ); 14 | WRITE16_HANDLER( atarisy2_xscroll_w ); 15 | WRITE16_HANDLER( atarisy2_videoram_w ); 16 | WRITE16_HANDLER( atarisy2_paletteram_w ); 17 | 18 | VIDEO_START( atarisy2 ); 19 | VIDEO_UPDATE( atarisy2 ); 20 | 21 | extern data16_t *atarisy2_slapstic; 22 | -------------------------------------------------------------------------------- /src/includes/f1gp.h: -------------------------------------------------------------------------------- 1 | extern data16_t *f1gp_spr1vram,*f1gp_spr2vram,*f1gp_spr1cgram,*f1gp_spr2cgram; 2 | extern data16_t *f1gp_fgvideoram,*f1gp_rozvideoram; 3 | extern data16_t *f1gp2_sprcgram,*f1gp2_spritelist; 4 | extern size_t f1gp_spr1cgram_size,f1gp_spr2cgram_size; 5 | 6 | 7 | VIDEO_START( f1gp ); 8 | VIDEO_START( f1gp2 ); 9 | VIDEO_UPDATE( f1gp ); 10 | VIDEO_UPDATE( f1gp2 ); 11 | 12 | READ16_HANDLER( f1gp_zoomdata_r ); 13 | WRITE16_HANDLER( f1gp_zoomdata_w ); 14 | READ16_HANDLER( f1gp_rozvideoram_r ); 15 | WRITE16_HANDLER( f1gp_rozvideoram_w ); 16 | WRITE16_HANDLER( f1gp_fgvideoram_w ); 17 | WRITE16_HANDLER( f1gp_fgscroll_w ); 18 | WRITE16_HANDLER( f1gp_gfxctrl_w ); 19 | WRITE16_HANDLER( f1gp2_gfxctrl_w ); 20 | -------------------------------------------------------------------------------- /src/includes/artmagic.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Art & Magic hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/artmagic.c -----------*/ 8 | 9 | extern data16_t *artmagic_vram0; 10 | extern data16_t *artmagic_vram1; 11 | 12 | extern int artmagic_xor[16], artmagic_is_stoneball; 13 | 14 | VIDEO_START( artmagic ); 15 | 16 | void artmagic_to_shiftreg(offs_t address, data16_t *data); 17 | void artmagic_from_shiftreg(offs_t address, data16_t *data); 18 | 19 | READ16_HANDLER( artmagic_blitter_r ); 20 | WRITE16_HANDLER( artmagic_blitter_w ); 21 | 22 | VIDEO_UPDATE( artmagic ); 23 | -------------------------------------------------------------------------------- /src/includes/capbowl.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Coors Light Bowling/Bowl-O-Rama hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/capbowl.c -----------*/ 8 | 9 | MACHINE_INIT( capbowl ); 10 | 11 | VIDEO_START( capbowl ); 12 | VIDEO_UPDATE( capbowl ); 13 | 14 | extern unsigned char *capbowl_rowaddress; 15 | 16 | WRITE_HANDLER( capbowl_rom_select_w ); 17 | 18 | READ_HANDLER( capbowl_pagedrom_r ); 19 | 20 | WRITE_HANDLER( bowlrama_turbo_w ); 21 | READ_HANDLER( bowlrama_turbo_r ); 22 | 23 | WRITE_HANDLER( capbowl_tms34061_w ); 24 | READ_HANDLER( capbowl_tms34061_r ); 25 | -------------------------------------------------------------------------------- /src/includes/dominos.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Dominos hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/dominos.c -----------*/ 8 | 9 | READ_HANDLER( dominos_port_r ); 10 | READ_HANDLER( dominos_sync_r ); 11 | WRITE_HANDLER( dominos_attract_w ); 12 | WRITE_HANDLER( dominos_tumble_w ); 13 | WRITE_HANDLER( dominos_lamp2_w ); 14 | WRITE_HANDLER( dominos_lamp1_w ); 15 | 16 | void dominos_ac_signal_flip(int dummy); 17 | 18 | /*----------- defined in vidhrdw/dominos.c -----------*/ 19 | 20 | VIDEO_UPDATE( dominos ); 21 | 22 | extern unsigned char *dominos_sound_ram; 23 | -------------------------------------------------------------------------------- /src/sound/dac.h: -------------------------------------------------------------------------------- 1 | #ifndef DAC_H 2 | #define DAC_H 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | #define MAX_DAC 4 9 | 10 | struct DACinterface 11 | { 12 | int num; /* total number of DACs */ 13 | int mixing_level[MAX_DAC]; 14 | }; 15 | 16 | int DAC_sh_start(const struct MachineSound *msound); 17 | void DAC_data_w(int num,int data); 18 | void DAC_signed_data_w(int num,int data); 19 | void DAC_data_16_w(int num,int data); 20 | void DAC_signed_data_16_w(int num,int data); 21 | 22 | WRITE_HANDLER( DAC_0_data_w ); 23 | WRITE_HANDLER( DAC_1_data_w ); 24 | WRITE_HANDLER( DAC_0_signed_data_w ); 25 | WRITE_HANDLER( DAC_1_signed_data_w ); 26 | 27 | #ifdef __cplusplus 28 | } 29 | #endif 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/libco/genode.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | libco.genode_secondary_stack (2018-09-15) 3 | author: Emery Hemingway 4 | license: public domain 5 | */ 6 | 7 | /* Genode include */ 8 | #include 9 | 10 | /* Libco include */ 11 | #include 12 | 13 | extern "C" 14 | void *genode_alloc_secondary_stack(unsigned long stack_size) 15 | { 16 | try { 17 | return Genode::Thread::myself()->alloc_secondary_stack("libco", stack_size); } 18 | catch (...) { 19 | Genode::error("libco: failed to allocate ", stack_size, " byte secondary stack"); 20 | return nullptr; 21 | } 22 | 23 | } 24 | 25 | extern "C" 26 | void genode_free_secondary_stack(void *stack) 27 | { 28 | Genode::Thread::myself()->free_secondary_stack(stack); 29 | } 30 | -------------------------------------------------------------------------------- /src/sndhrdw/m72.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | M72 audio interface 4 | 5 | ****************************************************************************/ 6 | 7 | MACHINE_INIT( m72_sound ); 8 | void m72_ym2151_irq_handler(int irq); 9 | WRITE_HANDLER( m72_sound_command_w ); 10 | WRITE_HANDLER( m72_sound_irq_ack_w ); 11 | READ_HANDLER( m72_sample_r ); 12 | WRITE_HANDLER( m72_sample_w ); 13 | 14 | /* the port goes to different address bits depending on the game */ 15 | void m72_set_sample_start(int start); 16 | WRITE_HANDLER( vigilant_sample_addr_w ); 17 | WRITE_HANDLER( shisen_sample_addr_w ); 18 | WRITE_HANDLER( rtype2_sample_addr_w ); 19 | WRITE_HANDLER( poundfor_sample_addr_w ); 20 | -------------------------------------------------------------------------------- /src/includes/jedi.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Return of the Jedi hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/jedi.c -----------*/ 8 | 9 | extern UINT8 *jedi_PIXIRAM; 10 | extern UINT8 *jedi_backgroundram; 11 | extern size_t jedi_backgroundram_size; 12 | 13 | VIDEO_START( jedi ); 14 | VIDEO_UPDATE( jedi ); 15 | 16 | WRITE_HANDLER( jedi_alpha_banksel_w ); 17 | WRITE_HANDLER( jedi_paletteram_w ); 18 | WRITE_HANDLER( jedi_backgroundram_w ); 19 | WRITE_HANDLER( jedi_vscroll_w ); 20 | WRITE_HANDLER( jedi_hscroll_w ); 21 | WRITE_HANDLER( jedi_video_off_w ); 22 | WRITE_HANDLER( jedi_PIXIRAM_w ); 23 | -------------------------------------------------------------------------------- /src/includes/liberatr.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Liberator hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/liberatr.c -----------*/ 8 | 9 | extern UINT8 *liberatr_base_ram; 10 | extern UINT8 *liberatr_planet_frame; 11 | extern UINT8 *liberatr_planet_select; 12 | extern UINT8 *liberatr_x; 13 | extern UINT8 *liberatr_y; 14 | extern UINT8 *liberatr_bitmapram; 15 | 16 | VIDEO_START( liberatr ); 17 | VIDEO_UPDATE( liberatr ); 18 | 19 | WRITE_HANDLER( liberatr_colorram_w ) ; 20 | WRITE_HANDLER( liberatr_bitmap_w ); 21 | READ_HANDLER( liberatr_bitmap_xy_r ); 22 | WRITE_HANDLER( liberatr_bitmap_xy_w ); 23 | -------------------------------------------------------------------------------- /src/cpu/i86/v30.h: -------------------------------------------------------------------------------- 1 | #define SetMD(x) (I.MF = (x)) /* OB [19.07.99] Mode Flag V30 */ 2 | 3 | #define MD (I.MF!=0) 4 | 5 | #undef CompressFlags 6 | #define CompressFlags() (WORD)(CF | (PF << 2) | (AF << 4) | (ZF << 6) \ 7 | | (SF << 7) | (I.TF << 8) | (I.IF << 9) \ 8 | | (I.DF << 10) | (OF << 11)| (MD << 15)) 9 | 10 | #undef ExpandFlags 11 | #define ExpandFlags(f) \ 12 | { \ 13 | I.CarryVal = (f) & 1; \ 14 | I.ParityVal = !((f) & 4); \ 15 | I.AuxVal = (f) & 16; \ 16 | I.ZeroVal = !((f) & 64); \ 17 | I.SignVal = (f) & 128 ? -1 : 0; \ 18 | I.TF = ((f) & 256) == 256; \ 19 | I.IF = ((f) & 512) == 512; \ 20 | I.DF = ((f) & 1024) == 1024; \ 21 | I.OverVal = (f) & 2048; \ 22 | I.MF = ((f) & 0x8000) == 0x8000; \ 23 | } 24 | -------------------------------------------------------------------------------- /src/cpu/i86/i88intf.h: -------------------------------------------------------------------------------- 1 | #ifndef __I88INTR_H_ 2 | #define __I88INTR_H_ 3 | 4 | #include "memory.h" 5 | #include "osd_cpu.h" 6 | 7 | #include "i86intf.h" 8 | 9 | /* Public variables */ 10 | #define i88_ICount i86_ICount 11 | 12 | /* Public functions */ 13 | #define i88_init i86_init 14 | #define i88_reset i86_reset 15 | #define i88_exit i86_exit 16 | #define i88_execute i86_execute 17 | #define i88_get_context i86_get_context 18 | #define i88_set_context i86_set_context 19 | #define i88_get_reg i86_get_reg 20 | #define i88_set_reg i86_set_reg 21 | #define i88_set_irq_line i86_set_irq_line 22 | #define i88_set_irq_callback i86_set_irq_callback 23 | extern const char *i88_info(void *context, int regnum); 24 | #define i88_dasm i86_dasm 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/includes/aztarac.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Centuri Aztarac hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in sndhrdw/aztarac.c -----------*/ 8 | 9 | READ16_HANDLER( aztarac_sound_r ); 10 | WRITE16_HANDLER( aztarac_sound_w ); 11 | 12 | READ_HANDLER( aztarac_snd_command_r ); 13 | READ_HANDLER( aztarac_snd_status_r ); 14 | WRITE_HANDLER( aztarac_snd_status_w ); 15 | 16 | INTERRUPT_GEN( aztarac_snd_timed_irq ); 17 | 18 | 19 | /*----------- defined in vidhrdw/aztarac.c -----------*/ 20 | 21 | extern data16_t *aztarac_vectorram; 22 | 23 | WRITE16_HANDLER( aztarac_ubr_w ); 24 | 25 | VIDEO_START( aztarac ); 26 | 27 | -------------------------------------------------------------------------------- /src/sound/scsp.h: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | SCSP (YMF292-F) header 4 | */ 5 | 6 | #ifndef _SCSP_H_ 7 | #define _SCSP_H_ 8 | 9 | #define MAX_SCSP (2) 10 | 11 | struct SCSPinterface 12 | { 13 | int num; 14 | int region[MAX_SCSP]; 15 | int mixing_level[MAX_SCSP]; /* volume */ 16 | void (*irq_callback[MAX_SCSP])(int state); /* irq callback */ 17 | }; 18 | 19 | int SCSP_sh_start(const struct MachineSound *msound); 20 | void SCSP_sh_stop(void); 21 | 22 | // SCSP register access 23 | READ16_HANDLER( SCSP_0_r ); 24 | WRITE16_HANDLER( SCSP_0_w ); 25 | READ16_HANDLER( SCSP_1_r ); 26 | WRITE16_HANDLER( SCSP_1_w ); 27 | 28 | // MIDI I/O access (used for comms on Model 2/3) 29 | WRITE16_HANDLER( SCSP_MidiIn ); 30 | READ16_HANDLER( SCSP_MidiOutR ); 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /src/vidhrdw/beaminv_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Tekunon Kougyou Beam Invader hardware 4 | 5 | ***************************************************************************/ 6 | 7 | #include "driver.h" 8 | #include "vidhrdw/generic.h" 9 | 10 | 11 | /************************************* 12 | * 13 | * Memory handlers 14 | * 15 | *************************************/ 16 | 17 | WRITE_HANDLER( beaminv_videoram_w ) 18 | { 19 | UINT8 x,y; 20 | int i; 21 | 22 | 23 | videoram[offset] = data; 24 | 25 | y = ~(offset >> 8 << 3); 26 | x = offset; 27 | 28 | for (i = 0; i < 8; i++) 29 | { 30 | plot_pixel(tmpbitmap, x, y, data & 0x01); 31 | 32 | y--; 33 | data >>= 1; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/cpu/i86/i188intf.h: -------------------------------------------------------------------------------- 1 | #ifndef __I188INTR_H_ 2 | #define __I188INTR_H_ 3 | 4 | #include "memory.h" 5 | #include "osd_cpu.h" 6 | 7 | #include "i186intf.h" 8 | 9 | /* Public variables */ 10 | #define i188_ICount i86_ICount 11 | 12 | /* Public functions */ 13 | #define i188_init i86_init 14 | #define i188_reset i86_reset 15 | #define i188_exit i86_exit 16 | #define i188_execute i186_execute 17 | #define i188_get_context i86_get_context 18 | #define i188_set_context i86_set_context 19 | #define i188_get_reg i86_get_reg 20 | #define i188_set_reg i86_set_reg 21 | #define i188_set_irq_line i86_set_irq_line 22 | #define i188_set_irq_callback i86_set_irq_callback 23 | extern const char *i188_info(void *context, int regnum); 24 | #define i188_dasm i186_dasm 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/audio/dsp_filters/Echo.dsp: -------------------------------------------------------------------------------- 1 | filters = 1 2 | filter0 = echo 3 | 4 | # Somewhat fancy Echo filter. Can take any number of echo channels with varying delays (ms) and feedback factors. 5 | # Echo output from all channels can be fed back into each other to create a somewhat reverb-like effect if desired. 6 | 7 | # Defaults, 200 ms delay echo with feedback: 8 | # Delay in ms. Takes an array with multiple channels. 9 | # echo_delay = "200" 10 | # Feedback factor for echo. 11 | # echo_feedback = "0.5" 12 | # Overall echo amplification. If too high, the echo becomes unstable due to feedback. 13 | # echo_amp = "0.2" 14 | 15 | # Reverby preset. 16 | # echo_delay = " 60 80 120 172 200 320 380" 17 | # echo_feedback = "0.5 0.5 0.4 0.3 0.5 0.3 0.2" 18 | 19 | # echo_amp = "0.12" 20 | -------------------------------------------------------------------------------- /src/sound/qsound.h: -------------------------------------------------------------------------------- 1 | /********************************************************* 2 | 3 | Capcom Q-Sound system 4 | 5 | *********************************************************/ 6 | 7 | #ifndef __QSOUND_H__ 8 | #define __QSOUND_H__ 9 | 10 | #define QSOUND_CLOCK 4000000 /* default 4MHz clock */ 11 | 12 | struct QSound_interface { 13 | int clock; /* clock */ 14 | int region; /* memory region of sample ROM(s) */ 15 | int mixing_level[2]; /* volume */ 16 | }; 17 | 18 | int qsound_sh_start( const struct MachineSound *msound ); 19 | void qsound_sh_stop( void ); 20 | 21 | WRITE_HANDLER( qsound_data_h_w ); 22 | WRITE_HANDLER( qsound_data_l_w ); 23 | WRITE_HANDLER( qsound_cmd_w ); 24 | READ_HANDLER( qsound_status_r ); 25 | 26 | #endif /* __QSOUND_H__ */ 27 | -------------------------------------------------------------------------------- /src/includes/ccastles.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Crystal Castles hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/ccastles.c -----------*/ 8 | 9 | extern unsigned char *ccastles_screen_addr; 10 | extern unsigned char *ccastles_screen_inc; 11 | extern unsigned char *ccastles_screen_inc_enable; 12 | extern unsigned char *ccastles_sprite_bank; 13 | extern unsigned char *ccastles_scrollx; 14 | extern unsigned char *ccastles_scrolly; 15 | 16 | WRITE_HANDLER( ccastles_paletteram_w ); 17 | 18 | VIDEO_START( ccastles ); 19 | VIDEO_UPDATE( ccastles ); 20 | 21 | READ_HANDLER( ccastles_bitmode_r ); 22 | WRITE_HANDLER( ccastles_bitmode_w ); 23 | -------------------------------------------------------------------------------- /src/sound/tiaintf.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | #include "tiaintf.h" 3 | #include "tiasound.h" 4 | 5 | static int channel = -1; 6 | static const struct TIAinterface *intf; 7 | 8 | int tia_sh_start(const struct MachineSound *msound) 9 | { 10 | intf = msound->sound_interface; 11 | 12 | if (Machine->sample_rate == 0) 13 | return 0; 14 | 15 | channel = stream_init("TIA", intf->volume, Machine->sample_rate, 0, tia_process); 16 | if (channel == -1) 17 | return 1; 18 | 19 | tia_sound_init(intf->clock, Machine->sample_rate, intf->gain); 20 | 21 | return 0; 22 | } 23 | 24 | 25 | void tia_sh_stop(void) 26 | { 27 | /* Nothing to do here */ 28 | } 29 | 30 | void tia_sh_update(void) 31 | { 32 | stream_update(channel, 0); 33 | } 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/cpu/i86/v33intf.h: -------------------------------------------------------------------------------- 1 | #ifndef __V33INTRF_H_ 2 | #define __V33INTRF_H_ 3 | 4 | #include "memory.h" 5 | #include "osd_cpu.h" 6 | 7 | #include "i86intrf.h" 8 | #include "v30intrf.h" 9 | 10 | /* Public variables */ 11 | #define v33_ICount i86_ICount 12 | 13 | /* Public functions */ 14 | #define v33_init v30_init 15 | #define v33_reset v30_reset 16 | #define v33_exit i86_exit 17 | #define v33_execute v30_execute 18 | #define v33_get_context i86_get_context 19 | #define v33_set_context i86_set_context 20 | #define v33_get_reg i86_get_reg 21 | #define v33_set_reg i86_set_reg 22 | #define v33_set_irq_line i86_set_irq_line 23 | #define v33_set_irq_callback i86_set_irq_callback 24 | extern const char *v33_info(void *context, int regnum); 25 | #define v33_dasm v30_dasm 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /src/includes/sbrkout.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Super Breakout hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/sbrkout.c -----------*/ 8 | 9 | WRITE_HANDLER( sbrkout_serve_led_w ); 10 | WRITE_HANDLER( sbrkout_start_1_led_w ); 11 | WRITE_HANDLER( sbrkout_start_2_led_w ); 12 | READ_HANDLER( sbrkout_read_DIPs_r ); 13 | INTERRUPT_GEN( sbrkout_interrupt ); 14 | READ_HANDLER( sbrkout_select1_r ); 15 | READ_HANDLER( sbrkout_select2_r ); 16 | 17 | 18 | /*----------- defined in vidhrdw/sbrkout.c -----------*/ 19 | 20 | extern unsigned char *sbrkout_horiz_ram; 21 | extern unsigned char *sbrkout_vert_ram; 22 | 23 | VIDEO_UPDATE( sbrkout ); 24 | -------------------------------------------------------------------------------- /src/sndhrdw/williams.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Midway/Williams Audio Boards 4 | 5 | ****************************************************************************/ 6 | 7 | MACHINE_DRIVER_EXTERN( williams_cvsd_sound ); 8 | MACHINE_DRIVER_EXTERN( williams_adpcm_sound ); 9 | MACHINE_DRIVER_EXTERN( williams_narc_sound ); 10 | 11 | void williams_cvsd_init(int cpunum, int pianum); 12 | void williams_cvsd_data_w(int data); 13 | void williams_cvsd_reset_w(int state); 14 | 15 | void williams_adpcm_init(int cpunum); 16 | void williams_adpcm_data_w(int data); 17 | void williams_adpcm_reset_w(int state); 18 | 19 | void williams_narc_init(int cpunum); 20 | void williams_narc_data_w(int data); 21 | void williams_narc_reset_w(int state); 22 | -------------------------------------------------------------------------------- /src/sound/streams.h: -------------------------------------------------------------------------------- 1 | #ifndef STREAMS_H 2 | #define STREAMS_H 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | void set_RC_filter(int channel,int R1,int R2,int R3,int C); 9 | 10 | int streams_sh_start(void); 11 | void streams_sh_stop(void); 12 | void streams_sh_update(void); 13 | 14 | int stream_init(const char *name,int default_mixing_level, 15 | int sample_rate, 16 | int param,void (*callback)(int param,INT16 *buffer,int length)); 17 | int stream_init_multi(int channels,const char **names,const int *default_mixing_levels, 18 | int sample_rate, 19 | int param,void (*callback)(int param,INT16 **buffer,int length)); 20 | void stream_update(int channel,int min_interval); /* min_interval is in usec */ 21 | 22 | #ifdef __cplusplus 23 | } 24 | #endif 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/sound/tms5220.h: -------------------------------------------------------------------------------- 1 | #ifndef tms5220_h 2 | #define tms5220_h 3 | 4 | void tms5220_reset(void); 5 | void tms5220_set_irq(void (*func)(int)); 6 | 7 | void tms5220_data_write(int data); 8 | int tms5220_status_read(void); 9 | int tms5220_ready_read(void); 10 | int tms5220_cycles_to_ready(void); 11 | int tms5220_int_read(void); 12 | 13 | void tms5220_process(INT16 *buffer, unsigned int size); 14 | 15 | /* three variables added by R Nabet */ 16 | void tms5220_set_read(int (*func)(int)); 17 | void tms5220_set_load_address(void (*func)(int)); 18 | void tms5220_set_read_and_branch(void (*func)(void)); 19 | 20 | typedef enum 21 | { 22 | variant_tms5220, 23 | variant_tms0285 24 | } tms5220_variant; 25 | 26 | void tms5220_set_variant(tms5220_variant new_variant); 27 | 28 | #endif 29 | 30 | -------------------------------------------------------------------------------- /src/sound/multipcm.h: -------------------------------------------------------------------------------- 1 | #ifndef __MultiPCM_H__ 2 | #define __MultiPCM_H__ 3 | 4 | #define MAX_MULTIPCM (2) /* max # of multipcm chips*/ 5 | 6 | #ifndef VOL_YM3012 7 | #define YM3012_VOL(LVol,LPan,RVol,RPan) (MIXER(LVol,LPan)|(MIXER(RVol,RPan) << 16)) 8 | #endif 9 | 10 | struct MultiPCM_interface 11 | { 12 | int chips; 13 | int clock[MAX_MULTIPCM]; 14 | int region[MAX_MULTIPCM]; 15 | int mixing_level[MAX_MULTIPCM]; 16 | }; 17 | 18 | 19 | int MultiPCM_sh_start(const struct MachineSound *msound); 20 | void MultiPCM_sh_stop(void); 21 | void MultiPCM_sh_reset(void); 22 | 23 | WRITE_HANDLER( MultiPCM_reg_0_w ); 24 | READ_HANDLER( MultiPCM_reg_0_r); 25 | WRITE_HANDLER( MultiPCM_reg_1_w ); 26 | READ_HANDLER( MultiPCM_reg_1_r); 27 | 28 | void multipcm_set_bank(int which, UINT32 leftoffs, UINT32 rightoffs); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /src/includes/meadows.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Meadows S2650 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in sndhrdw/meadows.c -----------*/ 8 | 9 | int meadows_sh_start(const struct MachineSound *msound); 10 | void meadows_sh_stop(void); 11 | void meadows_sh_dac_w(int data); 12 | void meadows_sh_update(void); 13 | extern UINT8 meadows_0c00; 14 | extern UINT8 meadows_0c01; 15 | extern UINT8 meadows_0c02; 16 | extern UINT8 meadows_0c03; 17 | 18 | 19 | /*----------- defined in vidhrdw/meadows.c -----------*/ 20 | 21 | VIDEO_START( meadows ); 22 | VIDEO_UPDATE( meadows ); 23 | WRITE_HANDLER( meadows_videoram_w ); 24 | WRITE_HANDLER( meadows_spriteram_w ); 25 | 26 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/crt/string.c: -------------------------------------------------------------------------------- 1 | #ifdef _MSC_VER 2 | #include 3 | #endif 4 | #include 5 | #include 6 | 7 | void *memset(void *dst, int val, size_t count) 8 | { 9 | void *start = dst; 10 | 11 | #if defined(_M_IA64) || defined (_M_AMD64) || defined(_M_ALPHA) || defined (_M_PPC) 12 | extern void RtlFillMemory(void *, size_t count, char); 13 | 14 | RtlFillMemory(dst, count, (char)val); 15 | #else 16 | while (count--) 17 | { 18 | *(char*)dst = (char)val; 19 | dst = (char*)dst + 1; 20 | } 21 | #endif 22 | 23 | return start; 24 | } 25 | 26 | void *memcpy(void *dst, const void *src, size_t len) 27 | { 28 | size_t i; 29 | 30 | for (i = 0; i < len; i++) 31 | ((unsigned char *)dst)[i] = ((unsigned char *)src)[i]; 32 | 33 | return dst; 34 | } 35 | -------------------------------------------------------------------------------- /src/machine/m68kfmly.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | 3 | TMP68301 support (dummy) driver 4 | 5 | Driver by Takahiro Nogi 2000/12/23 - 6 | 7 | ******************************************************************************/ 8 | 9 | READ16_HANDLER( tmp68301_address_decoder_r ); 10 | WRITE16_HANDLER( tmp68301_address_decoder_w ); 11 | READ16_HANDLER( tmp68301_interrupt_controller_r ); 12 | WRITE16_HANDLER( tmp68301_interrupt_controller_w ); 13 | READ16_HANDLER( tmp68301_parallel_interface_r ); 14 | WRITE16_HANDLER( tmp68301_parallel_interface_w ); 15 | READ16_HANDLER( tmp68301_serial_interface_r ); 16 | WRITE16_HANDLER( tmp68301_serial_interface_w ); 17 | READ16_HANDLER( tmp68301_timer_r ); 18 | WRITE16_HANDLER( tmp68301_timer_w ); 19 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: generic 2 | os: linux 3 | dist: trusty 4 | sudo: required 5 | addons: 6 | apt: 7 | packages: 8 | - g++-7 9 | sources: 10 | - ubuntu-toolchain-r-test 11 | env: 12 | global: 13 | - CORE=mame2003 14 | - COMPILER_NAME=gcc CXX=g++-7 CC=gcc-7 15 | matrix: 16 | - PLATFORM=3ds 17 | - PLATFORM=linux_x64 18 | - PLATFORM=wiiu 19 | before_script: 20 | - pwd 21 | - mkdir -p ~/bin 22 | - ln -s /usr/bin/gcc-7 ~/bin/gcc 23 | - ln -s /usr/bin/g++-7 ~/bin/g++ 24 | - ln -s /usr/bin/cpp-7 ~/bin/cpp 25 | - export PATH=~/bin:$PATH 26 | - ls -l ~/bin 27 | - echo $PATH 28 | - g++-7 --version 29 | - g++ --version 30 | script: 31 | - cd ~/ 32 | - git clone --depth=50 https://github.com/libretro/libretro-super 33 | - cd libretro-super/travis 34 | - ./build-long.sh 35 | -------------------------------------------------------------------------------- /src/includes/tubep.h: -------------------------------------------------------------------------------- 1 | VIDEO_EOF( tubep_eof ); 2 | PALETTE_INIT( tubep ); 3 | VIDEO_UPDATE( tubep ); 4 | PALETTE_INIT( rjammer ); 5 | VIDEO_UPDATE( rjammer ); 6 | VIDEO_START( tubep ); 7 | 8 | extern data8_t *rjammer_backgroundram; 9 | extern data8_t *tubep_backgroundram; 10 | extern data8_t *tubep_textram; 11 | extern data8_t *tubep_sprite_colorsharedram; 12 | 13 | extern WRITE_HANDLER( tubep_textram_w ); 14 | extern WRITE_HANDLER( rjammer_background_LS377_w ); 15 | extern WRITE_HANDLER( rjammer_background_page_w ); 16 | 17 | extern WRITE_HANDLER( tubep_colorproms_A4_line_w ); 18 | extern WRITE_HANDLER( tubep_background_romselect_w ); 19 | extern WRITE_HANDLER( tubep_background_a000_w ); 20 | extern WRITE_HANDLER( tubep_background_c000_w ); 21 | 22 | extern WRITE_HANDLER( tubep_sprite_control_w ); 23 | 24 | -------------------------------------------------------------------------------- /src/includes/jrpacman.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Bally/Midway Jr. Pac-Man 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/jrpacman.c -----------*/ 8 | 9 | extern unsigned char *jrpacman_scroll,*jrpacman_bgpriority; 10 | extern unsigned char *jrpacman_charbank,*jrpacman_spritebank; 11 | extern unsigned char *jrpacman_palettebank,*jrpacman_colortablebank; 12 | 13 | PALETTE_INIT( jrpacman ); 14 | VIDEO_START( jrpacman ); 15 | 16 | WRITE_HANDLER( jrpacman_videoram_w ); 17 | WRITE_HANDLER( jrpacman_palettebank_w ); 18 | WRITE_HANDLER( jrpacman_colortablebank_w ); 19 | WRITE_HANDLER( jrpacman_charbank_w ); 20 | WRITE_HANDLER( jrpacman_flipscreen_w ); 21 | 22 | VIDEO_UPDATE( jrpacman ); 23 | -------------------------------------------------------------------------------- /src/includes/atarig42.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari G42 hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/asic65.c -----------*/ 8 | 9 | void asic65_reset(int state); 10 | 11 | READ16_HANDLER( asic65_io_r ); 12 | READ16_HANDLER( asic65_r ); 13 | WRITE16_HANDLER( asic65_data_w ); 14 | 15 | 16 | /*----------- defined in vidhrdw/atarig42.c -----------*/ 17 | 18 | extern UINT16 atarig42_playfield_base; 19 | extern UINT16 atarig42_motion_object_base; 20 | extern UINT16 atarig42_motion_object_mask; 21 | 22 | VIDEO_START( atarig42 ); 23 | VIDEO_UPDATE( atarig42 ); 24 | 25 | WRITE16_HANDLER( atarig42_mo_control_w ); 26 | 27 | void atarig42_scanline_update(int scanline); 28 | 29 | -------------------------------------------------------------------------------- /deps/zlib/gzclose.c: -------------------------------------------------------------------------------- 1 | /* gzclose.c -- zlib gzclose() function 2 | * Copyright (C) 2004, 2010 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | #include "gzguts.h" 7 | 8 | extern int gzclose_w(gzFile file); 9 | extern int gzclose_r(gzFile file); 10 | 11 | /* gzclose() is in a separate file so that it is linked in only if it is used. 12 | That way the other gzclose functions can be used instead to avoid linking in 13 | unneeded compression or decompression routines. */ 14 | int gzclose(gzFile file) 15 | { 16 | #ifndef NO_GZCOMPRESS 17 | gz_statep state; 18 | 19 | if (file == NULL) 20 | return Z_STREAM_ERROR; 21 | state = (gz_statep)file; 22 | 23 | return state->mode == GZ_READ ? gzclose_r(file) : gzclose_w(file); 24 | #else 25 | return gzclose_r(file); 26 | #endif 27 | } 28 | -------------------------------------------------------------------------------- /src/cpu/i86/v20intf.h: -------------------------------------------------------------------------------- 1 | /* ASG 971222 -- rewrote this interface */ 2 | #ifndef __V20INTRF_H_ 3 | #define __V20INTRF_H_ 4 | 5 | #include "memory.h" 6 | #include "osd_cpu.h" 7 | 8 | #include "i86intrf.h" 9 | #include "v30intrf.h" 10 | 11 | /* Public variables */ 12 | #define v20_ICount i86_ICount 13 | 14 | /* Public functions */ 15 | #define v20_init v30_init 16 | #define v20_reset v30_reset 17 | #define v20_exit i86_exit 18 | #define v20_execute v30_execute 19 | #define v20_get_context i86_get_context 20 | #define v20_set_context i86_set_context 21 | #define v20_get_reg i86_get_reg 22 | #define v20_set_reg i86_set_reg 23 | #define v20_set_irq_line i86_set_irq_line 24 | #define v20_set_irq_callback i86_set_irq_callback 25 | extern const char *v20_info(void *context, int regnum); 26 | #define v20_dasm v30_dasm 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /src/includes/bsktball.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Basketball hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/bsktball.c -----------*/ 8 | 9 | WRITE_HANDLER( bsktball_nmion_w ); 10 | INTERRUPT_GEN( bsktball_interrupt ); 11 | WRITE_HANDLER( bsktball_ld1_w ); 12 | WRITE_HANDLER( bsktball_ld2_w ); 13 | READ_HANDLER( bsktball_in0_r ); 14 | WRITE_HANDLER( bsktball_led1_w ); 15 | WRITE_HANDLER( bsktball_led2_w ); 16 | WRITE_HANDLER( bsktball_bounce_w ); 17 | WRITE_HANDLER( bsktball_note_w ); 18 | WRITE_HANDLER( bsktball_noise_reset_w ); 19 | 20 | 21 | /*----------- defined in vidhrdw/bsktball.c -----------*/ 22 | 23 | extern unsigned char *bsktball_motion; 24 | VIDEO_UPDATE( bsktball ); 25 | -------------------------------------------------------------------------------- /src/includes/missile.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Missile Command hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/missile.c -----------*/ 8 | 9 | MACHINE_INIT( missile ); 10 | READ_HANDLER( missile_r ); 11 | WRITE_HANDLER( missile_w ); 12 | 13 | 14 | /*----------- defined in vidhrdw/missile.c -----------*/ 15 | 16 | extern unsigned char *missile_video2ram; 17 | 18 | VIDEO_START( missile ); 19 | VIDEO_UPDATE( missile ); 20 | 21 | WRITE_HANDLER( missile_video_3rd_bit_w ); 22 | WRITE_HANDLER( missile_video2_w ); 23 | 24 | READ_HANDLER( missile_video_r ); 25 | WRITE_HANDLER( missile_video_w ); 26 | WRITE_HANDLER( missile_video_mult_w ); 27 | WRITE_HANDLER( missile_palette_w ); 28 | -------------------------------------------------------------------------------- /jni/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | ROOT_DIR := $(LOCAL_PATH)/.. 4 | CORE_DIR := $(ROOT_DIR)/src 5 | 6 | include $(ROOT_DIR)/Makefile.common 7 | 8 | COREFLAGS := $(DEFS) $(COREDEFS) $(CPUDEFS) $(SOUNDDEFS) $(ASMDEFS) $(DBGDEFS) -std=gnu99 -ffast-math -funroll-loops -Dstricmp=strcasecmp -DINLINE="static inline" -DANDROID $(INCFLAGS) 9 | 10 | GIT_VERSION := " $(shell git rev-parse --short HEAD || echo unknown)" 11 | ifneq ($(GIT_VERSION)," unknown") 12 | COREFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\" 13 | endif 14 | 15 | include $(CLEAR_VARS) 16 | LOCAL_MODULE := retro 17 | LOCAL_SRC_FILES := $(SOURCES_C) 18 | LOCAL_CFLAGS := -std=gnu99 $(COREFLAGS) 19 | LOCAL_LDFLAGS := -Wl,-version-script=$(ROOT_DIR)/link.T 20 | 21 | ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) 22 | LOCAL_ARM_NEON := true 23 | endif 24 | 25 | include $(BUILD_SHARED_LIBRARY) 26 | -------------------------------------------------------------------------------- /src/includes/cloud9.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Cloud 9 (prototype) hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/cloud9.c -----------*/ 8 | 9 | WRITE_HANDLER( cloud9_paletteram_w ); 10 | READ_HANDLER( cloud9_bitmap_regs_r ); 11 | WRITE_HANDLER( cloud9_bitmap_regs_w ); 12 | WRITE_HANDLER( cloud9_bitmap_w ); 13 | 14 | VIDEO_UPDATE( cloud9 ); 15 | VIDEO_START( cloud9 ); 16 | 17 | 18 | extern unsigned char *cloud9_vram2; 19 | extern unsigned char *cloud9_bitmap_regs; 20 | extern unsigned char *cloud9_auto_inc_x; 21 | extern unsigned char *cloud9_auto_inc_y; 22 | extern unsigned char *cloud9_both_banks; 23 | extern unsigned char *cloud9_vram_bank; 24 | extern unsigned char *cloud9_color_bank; 25 | -------------------------------------------------------------------------------- /src/sndhrdw/taitosnd.h: -------------------------------------------------------------------------------- 1 | #ifndef __TAITOSND_H__ 2 | #define __TAITOSND_H__ 3 | 4 | 5 | /* MASTER (16 bit bus) control functions */ 6 | WRITE16_HANDLER( taitosound_port16_lsb_w ); 7 | WRITE16_HANDLER( taitosound_comm16_lsb_w ); 8 | READ16_HANDLER( taitosound_comm16_lsb_r ); 9 | 10 | WRITE16_HANDLER( taitosound_port16_msb_w ); 11 | WRITE16_HANDLER( taitosound_comm16_msb_w ); 12 | READ16_HANDLER( taitosound_comm16_msb_r ); 13 | 14 | 15 | /* MASTER (8bit bus) control functions */ 16 | WRITE_HANDLER( taitosound_port_w ); 17 | WRITE_HANDLER( taitosound_comm_w ); 18 | READ_HANDLER( taitosound_comm_r ); 19 | 20 | 21 | /* SLAVE (8bit bus) control functions ONLY */ 22 | WRITE_HANDLER( taitosound_slave_port_w ); 23 | READ_HANDLER( taitosound_slave_comm_r ); 24 | WRITE_HANDLER( taitosound_slave_comm_w ); 25 | 26 | 27 | #endif /*__TAITOSND_H__*/ 28 | -------------------------------------------------------------------------------- /src/includes/segac2.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Sega System C/C2 Driver 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/segac2.c -----------*/ 8 | 9 | extern UINT8 segac2_vdp_regs[]; 10 | extern int segac2_bg_palbase; 11 | extern int segac2_sp_palbase; 12 | extern int segac2_palbank; 13 | extern UINT16 scanbase; 14 | 15 | VIDEO_START( puckpkmn ); 16 | VIDEO_START( megatech ); 17 | VIDEO_START( megaplay ); 18 | 19 | VIDEO_START( segac2 ); 20 | 21 | VIDEO_EOF( segac2 ); 22 | 23 | VIDEO_UPDATE( segac2 ); 24 | VIDEO_UPDATE( megatech ); 25 | VIDEO_UPDATE( megaplay ); 26 | 27 | void segac2_enable_display(int enable); 28 | 29 | READ16_HANDLER ( segac2_vdp_r ); 30 | WRITE16_HANDLER( segac2_vdp_w ); 31 | -------------------------------------------------------------------------------- /src/sndhrdw/rastan_sndhrdw.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | 3 | /* Game writes here to set ADPCM ROM address */ 4 | WRITE_HANDLER( rastan_adpcm_trigger_w ) 5 | { 6 | UINT8 *rom = memory_region(REGION_SOUND1); 7 | int len = memory_region_length(REGION_SOUND1); 8 | int start = data << 8; 9 | int end; 10 | 11 | /* look for end of sample */ 12 | end = (start + 3) & ~3; 13 | while (end < len && *((UINT32 *)(&rom[end])) != 0x08080808) 14 | end += 4; 15 | 16 | ADPCM_play(0,start,(end-start)*2); 17 | } 18 | 19 | /* Game writes here to START ADPCM_voice playing */ 20 | WRITE_HANDLER( rastan_c000_w ) 21 | { 22 | } 23 | 24 | /* Game writes here to STOP ADPCM_voice playing */ 25 | WRITE_HANDLER( rastan_d000_w ) 26 | { 27 | #if 0 28 | if (Machine->samples == 0) return; 29 | if (data==0) 30 | mixer_stop_sample(channel); 31 | #endif 32 | } 33 | -------------------------------------------------------------------------------- /src/vidhrdw/voodoo.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | 3dfx Voodoo Graphics SST-1 emulator 4 | 5 | driver by Aaron Giles 6 | 7 | **************************************************************************/ 8 | 9 | extern data32_t *voodoo_regs; 10 | 11 | VIDEO_START( voodoo_1x4mb ); 12 | VIDEO_START( voodoo_2x4mb ); 13 | VIDEO_START( voodoo2_1x4mb ); 14 | VIDEO_START( voodoo2_2x4mb ); 15 | VIDEO_STOP( voodoo ); 16 | VIDEO_UPDATE( voodoo ); 17 | 18 | void voodoo_set_init_enable(data32_t newval); 19 | 20 | void voodoo_reset(void); 21 | 22 | WRITE32_HANDLER( voodoo_regs_w ); 23 | WRITE32_HANDLER( voodoo2_regs_w ); 24 | READ32_HANDLER( voodoo_regs_r ); 25 | 26 | WRITE32_HANDLER( voodoo_framebuf_w ); 27 | READ32_HANDLER( voodoo_framebuf_r ); 28 | 29 | WRITE32_HANDLER( voodoo_textureram_w ); 30 | -------------------------------------------------------------------------------- /src/includes/kangaroo.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Sun Electronics Kangaroo hardware 4 | 5 | driver by Ville Laitinen 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | 11 | 12 | /*----------- defined in vidhrdw/kangaroo.c -----------*/ 13 | 14 | extern UINT8 *kangaroo_video_control; 15 | extern UINT8 *kangaroo_bank_select; 16 | extern UINT8 *kangaroo_blitter; 17 | extern UINT8 *kangaroo_scroll; 18 | 19 | PALETTE_INIT( kangaroo ); 20 | VIDEO_START( kangaroo ); 21 | VIDEO_UPDATE( kangaroo ); 22 | 23 | WRITE_HANDLER( kangaroo_blitter_w ); 24 | WRITE_HANDLER( kangaroo_videoram_w ); 25 | WRITE_HANDLER( kangaroo_video_control_w ); 26 | WRITE_HANDLER( kangaroo_bank_select_w ); 27 | WRITE_HANDLER( kangaroo_color_mask_w ); 28 | -------------------------------------------------------------------------------- /src/includes/bzone.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Battle Zone hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in drivers/bzone.c -----------*/ 8 | 9 | READ_HANDLER( bzone_IN0_r ); 10 | 11 | 12 | /*----------- defined in sndhrdw/bzone.c -----------*/ 13 | 14 | WRITE_HANDLER( bzone_sounds_w ); 15 | 16 | int bzone_sh_start(const struct MachineSound *msound); 17 | void bzone_sh_stop(void); 18 | void bzone_sh_update(void); 19 | 20 | 21 | /*----------- defined in sndhrdw/redbaron.c -----------*/ 22 | 23 | WRITE_HANDLER( redbaron_sounds_w ); 24 | WRITE_HANDLER( redbaron_pokey_w ); 25 | 26 | int redbaron_sh_start(const struct MachineSound *msound); 27 | void redbaron_sh_stop(void); 28 | void redbaron_sh_update(void); 29 | -------------------------------------------------------------------------------- /src/includes/gridlee.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Videa Gridlee hardware 4 | 5 | driver by Aaron Giles 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | 11 | 12 | /*----------- defined in sndhrdw/gridlee.c -----------*/ 13 | 14 | WRITE_HANDLER( gridlee_sound_w ); 15 | int gridlee_sh_start(const struct MachineSound *msound); 16 | 17 | 18 | /*----------- defined in vidhrdw/gridlee.c -----------*/ 19 | 20 | /* video driver data & functions */ 21 | extern UINT8 gridlee_cocktail_flip; 22 | 23 | PALETTE_INIT( gridlee ); 24 | VIDEO_START( gridlee ); 25 | VIDEO_UPDATE( gridlee ); 26 | 27 | WRITE_HANDLER( gridlee_cocktail_flip_w ); 28 | WRITE_HANDLER( gridlee_videoram_w ); 29 | WRITE_HANDLER( gridlee_palette_select_w ); 30 | -------------------------------------------------------------------------------- /src/includes/crgolf.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Kitco Crowns Golf hardware 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/crgolf.c -----------*/ 8 | 9 | extern data8_t *crgolf_color_select; 10 | extern data8_t *crgolf_screen_flip; 11 | extern data8_t *crgolf_screen_select; 12 | extern data8_t *crgolf_screenb_enable; 13 | extern data8_t *crgolf_screena_enable; 14 | 15 | WRITE_HANDLER( crgolf_videoram_bit0_w ); 16 | WRITE_HANDLER( crgolf_videoram_bit1_w ); 17 | WRITE_HANDLER( crgolf_videoram_bit2_w ); 18 | 19 | READ_HANDLER( crgolf_videoram_bit0_r ); 20 | READ_HANDLER( crgolf_videoram_bit1_r ); 21 | READ_HANDLER( crgolf_videoram_bit2_r ); 22 | 23 | PALETTE_INIT( crgolf ); 24 | VIDEO_START( crgolf ); 25 | VIDEO_UPDATE( crgolf ); 26 | -------------------------------------------------------------------------------- /src/includes/espial.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Espial hardware games 4 | 5 | ***************************************************************************/ 6 | 7 | /* defined in vihdrdw/espial.c */ 8 | extern data8_t *espial_videoram; 9 | extern data8_t *espial_colorram; 10 | extern data8_t *espial_attributeram; 11 | extern data8_t *espial_scrollram; 12 | extern data8_t *espial_spriteram_1; 13 | extern data8_t *espial_spriteram_2; 14 | extern data8_t *espial_spriteram_3; 15 | 16 | PALETTE_INIT( espial ); 17 | VIDEO_START( espial ); 18 | VIDEO_START( netwars ); 19 | WRITE_HANDLER( espial_videoram_w ); 20 | WRITE_HANDLER( espial_colorram_w ); 21 | WRITE_HANDLER( espial_attributeram_w ); 22 | WRITE_HANDLER( espial_scrollram_w ); 23 | WRITE_HANDLER( espial_flipscreen_w ); 24 | VIDEO_UPDATE( espial ); 25 | 26 | -------------------------------------------------------------------------------- /src/sound/5110intf.h: -------------------------------------------------------------------------------- 1 | #ifndef intf5110_h 2 | #define intf5110_h 3 | 4 | struct TMS5110interface 5 | { 6 | int baseclock; /* clock rate = 80 * output sample rate, */ 7 | /* usually 640000 for 8000 Hz sample rate or */ 8 | /* usually 800000 for 10000 Hz sample rate. */ 9 | int mixing_level; 10 | void (*irq)(int state); /* IRQ callback function */ 11 | int (*M0_callback)(void); /* function to be called when chip requests another bit*/ 12 | }; 13 | 14 | int tms5110_sh_start(const struct MachineSound *msound); 15 | void tms5110_sh_stop(void); 16 | void tms5110_sh_update(void); 17 | 18 | WRITE_HANDLER( tms5110_CTL_w ); 19 | WRITE_HANDLER( tms5110_PDC_w ); 20 | 21 | READ_HANDLER( tms5110_status_r ); 22 | int tms5110_ready_r(void); 23 | 24 | void tms5110_reset(void); 25 | void tms5110_set_frequency(int frequency); 26 | 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /src/includes/pacman.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Namco PuckMan 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in machine/pacplus.c -----------*/ 8 | 9 | void pacplus_decode(void); 10 | 11 | 12 | /*----------- defined in machine/jumpshot.c -----------*/ 13 | 14 | void jumpshot_decode(void); 15 | 16 | 17 | /*----------- defined in machine/theglobp.c -----------*/ 18 | 19 | MACHINE_INIT( theglobp ); 20 | READ_HANDLER( theglobp_decrypt_rom ); 21 | 22 | 23 | /*----------- defined in machine/mspacman.c -----------*/ 24 | 25 | MACHINE_INIT( mspacman ); 26 | WRITE_HANDLER( mspacman_activate_rom ); 27 | 28 | /*----------- defined in machine/acitya.c -------------*/ 29 | 30 | MACHINE_INIT( acitya ); 31 | READ_HANDLER( acitya_decrypt_rom ); 32 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/samples/file/nbio/Makefile: -------------------------------------------------------------------------------- 1 | TARGET := nbio_test 2 | 3 | LIBRETRO_COMM_DIR := ../../.. 4 | 5 | SOURCES := \ 6 | nbio_test.c \ 7 | $(LIBRETRO_COMM_DIR)/compat/fopen_utf8.c \ 8 | $(LIBRETRO_COMM_DIR)/compat/compat_strl.c \ 9 | $(LIBRETRO_COMM_DIR)/encodings/encoding_utf.c \ 10 | $(LIBRETRO_COMM_DIR)/file/nbio/nbio_intf.c \ 11 | $(LIBRETRO_COMM_DIR)/file/nbio/nbio_linux.c \ 12 | $(LIBRETRO_COMM_DIR)/file/nbio/nbio_unixmmap.c \ 13 | $(LIBRETRO_COMM_DIR)/file/nbio/nbio_windowsmmap.c \ 14 | $(LIBRETRO_COMM_DIR)/file/nbio/nbio_stdio.c 15 | 16 | OBJS := $(SOURCES:.c=.o) 17 | 18 | CFLAGS += -Wall -pedantic -std=gnu99 -g -I$(LIBRETRO_COMM_DIR)/include 19 | 20 | all: $(TARGET) 21 | 22 | %.o: %.c 23 | $(CC) -c -o $@ $< $(CFLAGS) 24 | 25 | $(TARGET): $(OBJS) 26 | $(CC) -o $@ $^ $(LDFLAGS) 27 | 28 | clean: 29 | rm -f $(TARGET) $(OBJS) 30 | 31 | .PHONY: clean 32 | 33 | -------------------------------------------------------------------------------- /src/sndhrdw/dcs.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Midway DCS Audio Board 4 | 5 | ****************************************************************************/ 6 | 7 | MACHINE_DRIVER_EXTERN( dcs_audio ); 8 | MACHINE_DRIVER_EXTERN( dcs_audio_uart ); 9 | MACHINE_DRIVER_EXTERN( dcs2_audio ); 10 | MACHINE_DRIVER_EXTERN( dcs2_audio_2104 ); 11 | 12 | void dcs_init(void); 13 | void dcs2_init(offs_t polling_offset); 14 | void dcs_set_auto_ack(int state); 15 | 16 | void dcs_set_fifo_callbacks(UINT16 (*fifo_data_r)(void), UINT16 (*fifo_status_r)(void)); 17 | void dcs_set_io_callbacks(void (*output_full_cb)(int), void (*input_empty_cb)(int)); 18 | 19 | int dcs_data_r(void); 20 | void dcs_ack_w(void); 21 | int dcs_data2_r(void); 22 | int dcs_control_r(void); 23 | 24 | void dcs_data_w(int data); 25 | void dcs_reset_w(int state); 26 | -------------------------------------------------------------------------------- /src/includes/beathead.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari "Stella on Steroids" hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/beathead.c -----------*/ 8 | 9 | extern data32_t * beathead_vram_bulk_latch; 10 | extern data32_t * beathead_palette_select; 11 | 12 | VIDEO_START( beathead ); 13 | VIDEO_UPDATE( beathead ); 14 | 15 | void beathead_scanline_update(int scanline); 16 | 17 | WRITE32_HANDLER( beathead_vram_transparent_w ); 18 | WRITE32_HANDLER( beathead_vram_bulk_w ); 19 | WRITE32_HANDLER( beathead_vram_latch_w ); 20 | WRITE32_HANDLER( beathead_vram_copy_w ); 21 | WRITE32_HANDLER( beathead_finescroll_w ); 22 | WRITE32_HANDLER( beathead_palette_w ); 23 | READ32_HANDLER( beathead_hsync_ram_r ); 24 | WRITE32_HANDLER( beathead_hsync_ram_w ); 25 | -------------------------------------------------------------------------------- /src/includes/centiped.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Centipede hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/centiped.c -----------*/ 8 | 9 | extern UINT8 centiped_flipscreen; 10 | 11 | PALETTE_INIT( centiped ); 12 | PALETTE_INIT( milliped ); 13 | PALETTE_INIT( warlords ); 14 | 15 | VIDEO_START( centiped ); 16 | VIDEO_START( milliped ); 17 | VIDEO_START( warlords ); 18 | VIDEO_START( qwakprot ); 19 | 20 | VIDEO_UPDATE( centiped ); 21 | VIDEO_UPDATE( warlords ); 22 | VIDEO_UPDATE( qwakprot ); 23 | 24 | WRITE_HANDLER( centiped_paletteram_w ); 25 | WRITE_HANDLER( milliped_paletteram_w ); 26 | WRITE_HANDLER( qwakprot_paletteram_w ); 27 | 28 | WRITE_HANDLER( centiped_videoram_w ); 29 | WRITE_HANDLER( centiped_flip_screen_w ); 30 | 31 | -------------------------------------------------------------------------------- /src/cpu/i86/v30intf.h: -------------------------------------------------------------------------------- 1 | #ifndef __V30INTRF_H_ 2 | #define __V30INTRF_H_ 3 | 4 | #include "memory.h" 5 | #include "osd_cpu.h" 6 | 7 | #include "i86intf.h" 8 | 9 | /* Public variables */ 10 | #define v30_ICount i86_ICount 11 | 12 | /* Public functions */ 13 | extern void v30_init(void); 14 | extern void v30_reset(void *param); 15 | #define v30_exit i86_exit 16 | extern int v30_execute(int cycles); 17 | #define v30_get_context i86_get_context 18 | #define v30_set_context i86_set_context 19 | #define v30_get_reg i86_get_reg 20 | #define v30_set_reg i86_set_reg 21 | #define v30_set_irq_line i86_set_irq_line 22 | #define v30_set_irq_callback i86_set_irq_callback 23 | extern const char *v30_info(void *context, int regnum); 24 | extern unsigned v30_dasm(char *buffer, unsigned pc); 25 | 26 | #ifdef MAME_DEBUG 27 | extern unsigned DasmV30(char* buffer, unsigned pc); 28 | #endif 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /src/sound/segapcm.h: -------------------------------------------------------------------------------- 1 | /*********************************************************/ 2 | /* SEGA 8bit PCM */ 3 | /*********************************************************/ 4 | 5 | #ifndef __SEGAPCM_H__ 6 | #define __SEGAPCM_H__ 7 | 8 | #define BANK_256 (11) 9 | #define BANK_512 (12) 10 | #define BANK_12M (13) 11 | #define BANK_MASK7 (0x70<<16) 12 | #define BANK_MASKF (0xf0<<16) 13 | #define BANK_MASKF8 (0xf8<<16) 14 | 15 | struct SEGAPCMinterface 16 | { 17 | int mode; 18 | int bank; 19 | int region; 20 | int volume; 21 | }; 22 | 23 | enum SEGAPCM_samplerate 24 | { 25 | SEGAPCM_SAMPLE15K, 26 | SEGAPCM_SAMPLE32K 27 | }; 28 | 29 | int SEGAPCM_sh_start( const struct MachineSound *msound ); 30 | void SEGAPCM_sh_stop( void ); 31 | 32 | WRITE_HANDLER( SegaPCM_w ); 33 | READ_HANDLER( SegaPCM_r ); 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /src/includes/namconb1.h: -------------------------------------------------------------------------------- 1 | /* namconb1.h */ 2 | 3 | #define NAMCONB1_COLS 36 4 | #define NAMCONB1_ROWS 28 5 | #define NAMCONB1_FG1BASE (0x8010/2) 6 | #define NAMCONB1_FG2BASE (0x8810/2) 7 | 8 | #define NAMCONB1_TILEMASKREGION REGION_GFX1 9 | #define NAMCONB1_TILEGFXREGION REGION_GFX2 10 | #define NAMCONB1_SPRITEGFXREGION REGION_GFX3 11 | #define NAMCONB1_ROTMASKREGION REGION_GFX4 12 | #define NAMCONB1_ROTGFXREGION REGION_GFX5 13 | 14 | #define NAMCONB1_TILEGFX 0 15 | #define NAMCONB1_SPRITEGFX 1 16 | #define NAMCONB1_ROTGFX 2 17 | 18 | extern data32_t *namconb1_workram32; 19 | extern data32_t *namconb1_spritebank32; 20 | extern data32_t *namconb1_scrollram32; 21 | extern data32_t *namconb1_spritepos32; 22 | 23 | WRITE32_HANDLER( namconb1_videoram_w ); 24 | 25 | VIDEO_UPDATE( namconb1 ); 26 | VIDEO_START( namconb1 ); 27 | 28 | VIDEO_UPDATE( namconb2 ); 29 | VIDEO_START( namconb2 ); 30 | -------------------------------------------------------------------------------- /src/machine/segacrpt.h: -------------------------------------------------------------------------------- 1 | void buckrog_decode(void); 2 | void pengo_decode(void); 3 | void szaxxon_decode(void); 4 | void suprloco_decode(void); 5 | void yamato_decode(void); 6 | void sindbadm_decode(void); 7 | void regulus_decode(void); 8 | void mrviking_decode(void); 9 | void swat_decode(void); 10 | void flicky_decode(void); 11 | void futspy_decode(void); 12 | void wmatch_decode(void); 13 | void bullfgtj_decode(void); 14 | void spatter_decode(void); 15 | void pitfall2_decode(void); 16 | void nprinces_decode(void); 17 | void seganinj_decode(void); 18 | void imsorry_decode(void); 19 | void teddybb_decode(void); 20 | void myheroj_decode(void); 21 | void hvymetal_decode(void); 22 | void lvcards_decode(void); 23 | 24 | void fdwarrio_decode(void); 25 | void astrofl_decode(void); 26 | void wboy2_decode(void); 27 | void spcpostn_decode(void); 28 | void gardia_decode(void); 29 | void gardiab_decode(void); 30 | -------------------------------------------------------------------------------- /src/xml2info/xmltok_impl.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd 3 | See the file COPYING for copying permission. 4 | */ 5 | 6 | enum { 7 | BT_NONXML, 8 | BT_MALFORM, 9 | BT_LT, 10 | BT_AMP, 11 | BT_RSQB, 12 | BT_LEAD2, 13 | BT_LEAD3, 14 | BT_LEAD4, 15 | BT_TRAIL, 16 | BT_CR, 17 | BT_LF, 18 | BT_GT, 19 | BT_QUOT, 20 | BT_APOS, 21 | BT_EQUALS, 22 | BT_QUEST, 23 | BT_EXCL, 24 | BT_SOL, 25 | BT_SEMI, 26 | BT_NUM, 27 | BT_LSQB, 28 | BT_S, 29 | BT_NMSTRT, 30 | BT_COLON, 31 | BT_HEX, 32 | BT_DIGIT, 33 | BT_NAME, 34 | BT_MINUS, 35 | BT_OTHER, /* known not to be a name or name start character */ 36 | BT_NONASCII, /* might be a name or name start character */ 37 | BT_PERCNT, 38 | BT_LPAR, 39 | BT_RPAR, 40 | BT_AST, 41 | BT_PLUS, 42 | BT_COMMA, 43 | BT_VERBAR 44 | }; 45 | 46 | #include 47 | -------------------------------------------------------------------------------- /src/includes/pengo.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Sega Pengo 4 | 5 | **************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/pengo.c -----------*/ 8 | 9 | PALETTE_INIT( pacman ); 10 | PALETTE_INIT( pengo ); 11 | 12 | VIDEO_START( pacman ); 13 | VIDEO_START( pengo ); 14 | 15 | WRITE_HANDLER( pengo_gfxbank_w ); 16 | WRITE_HANDLER( pengo_flipscreen_w ); 17 | 18 | VIDEO_UPDATE( pengo ); 19 | 20 | WRITE_HANDLER( vanvan_bgcolor_w ); 21 | VIDEO_UPDATE( vanvan ); 22 | 23 | extern data8_t *sprite_bank, *tiles_bankram; 24 | WRITE_HANDLER( s2650games_videoram_w ); 25 | WRITE_HANDLER( s2650games_colorram_w ); 26 | WRITE_HANDLER( s2650games_scroll_w ); 27 | WRITE_HANDLER( s2650games_tilesbank_w ); 28 | WRITE_HANDLER( s2650games_flipscreen_w ); 29 | VIDEO_START( s2650games ); 30 | VIDEO_UPDATE( s2650games ); 31 | -------------------------------------------------------------------------------- /src/includes/subs.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Subs hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/subs.c -----------*/ 8 | 9 | MACHINE_INIT( subs ); 10 | INTERRUPT_GEN( subs_interrupt ); 11 | WRITE_HANDLER( subs_steer_reset_w ); 12 | READ_HANDLER( subs_control_r ); 13 | READ_HANDLER( subs_coin_r ); 14 | READ_HANDLER( subs_options_r ); 15 | WRITE_HANDLER( subs_lamp1_w ); 16 | WRITE_HANDLER( subs_lamp2_w ); 17 | WRITE_HANDLER( subs_noise_reset_w ); 18 | WRITE_HANDLER( subs_sonar2_w ); 19 | WRITE_HANDLER( subs_sonar1_w ); 20 | WRITE_HANDLER( subs_crash_w ); 21 | WRITE_HANDLER( subs_explode_w ); 22 | 23 | 24 | /*----------- defined in vidhrdw/subs.c -----------*/ 25 | 26 | VIDEO_UPDATE( subs ); 27 | 28 | WRITE_HANDLER( subs_invert1_w ); 29 | WRITE_HANDLER( subs_invert2_w ); 30 | -------------------------------------------------------------------------------- /src/includes/namcona1.h: -------------------------------------------------------------------------------- 1 | /* namcona1.h */ 2 | 3 | enum 4 | { 5 | NAMCO_CGANGPZL, 6 | NAMCO_EMERALDA, 7 | NAMCO_KNCKHEAD, 8 | NAMCO_BKRTMAQ, 9 | NAMCO_EXBANIA, 10 | NAMCO_QUIZTOU, 11 | NAMCO_SWCOURT, 12 | NAMCO_TINKLPIT, 13 | NAMCO_NUMANATH, 14 | NAMCO_FA, 15 | NAMCO_XDAY2 16 | }; 17 | 18 | extern int namcona1_gametype; 19 | 20 | #define NA1_NVRAM_SIZE (0x800) 21 | 22 | extern data16_t *namcona1_workram; 23 | extern data16_t *namcona1_vreg; 24 | extern data16_t *namcona1_scroll; 25 | extern data16_t *namcona1_sparevram; 26 | 27 | extern WRITE16_HANDLER( namcona1_videoram_w ); 28 | extern READ16_HANDLER( namcona1_videoram_r ); 29 | 30 | extern READ16_HANDLER( namcona1_gfxram_r ); 31 | extern WRITE16_HANDLER( namcona1_gfxram_w ); 32 | 33 | extern READ16_HANDLER( namcona1_paletteram_r ); 34 | extern WRITE16_HANDLER( namcona1_paletteram_w ); 35 | 36 | extern VIDEO_UPDATE( namcona1 ); 37 | extern VIDEO_START( namcona1 ); 38 | -------------------------------------------------------------------------------- /src/cpu/i86/i186intf.h: -------------------------------------------------------------------------------- 1 | /* ASG 971222 -- rewrote this interface */ 2 | #ifndef __I186INTR_H_ 3 | #define __I186INTR_H_ 4 | 5 | #include "memory.h" 6 | #include "osd_cpu.h" 7 | 8 | #include "i86intf.h" 9 | 10 | /* Public variables */ 11 | #define i186_ICount i86_ICount 12 | 13 | /* Public functions */ 14 | #define i186_init i86_init 15 | #define i186_reset i86_reset 16 | #define i186_exit i86_exit 17 | extern int i186_execute(int cyclecount); 18 | #define i186_get_context i86_get_context 19 | #define i186_set_context i86_set_context 20 | #define i186_get_reg i86_get_reg 21 | #define i186_set_reg i86_set_reg 22 | #define i186_set_irq_line i86_set_irq_line 23 | #define i186_set_irq_callback i86_set_irq_callback 24 | extern const char *i186_info(void *context, int regnum); 25 | extern unsigned i186_dasm(char *buffer, unsigned pc); 26 | 27 | #ifdef MAME_DEBUG 28 | extern unsigned DasmI186(char* buffer, unsigned pc); 29 | #endif 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /src/includes/cchasm.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Cinematronics Cosmic Chasm hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/cchasm.c -----------*/ 8 | 9 | READ16_HANDLER( cchasm_6840_r ); 10 | WRITE16_HANDLER( cchasm_6840_w ); 11 | 12 | WRITE16_HANDLER( cchasm_led_w ); 13 | 14 | 15 | /*----------- defined in sndhrdw/cchasm.c -----------*/ 16 | 17 | READ_HANDLER( cchasm_snd_io_r ); 18 | WRITE_HANDLER( cchasm_snd_io_w ); 19 | 20 | WRITE16_HANDLER( cchasm_io_w ); 21 | READ16_HANDLER( cchasm_io_r ); 22 | 23 | int cchasm_sh_start(const struct MachineSound *msound); 24 | void cchasm_sh_update(void); 25 | 26 | 27 | /*----------- defined in vidhrdw/cchasm.c -----------*/ 28 | 29 | extern data16_t *cchasm_ram; 30 | 31 | WRITE16_HANDLER( cchasm_refresh_control_w ); 32 | VIDEO_START( cchasm ); 33 | 34 | -------------------------------------------------------------------------------- /src/lib/libflac/include/share/utf8.h: -------------------------------------------------------------------------------- 1 | #ifndef SHARE__UTF8_H 2 | #define SHARE__UTF8_H 3 | 4 | /* 5 | * Convert a string between UTF-8 and the locale's charset. 6 | * Invalid bytes are replaced by '#', and characters that are 7 | * not available in the target encoding are replaced by '?'. 8 | * 9 | * If the locale's charset is not set explicitly then it is 10 | * obtained using nl_langinfo(CODESET), where available, the 11 | * environment variable CHARSET, or assumed to be US-ASCII. 12 | * 13 | * Return value of conversion functions: 14 | * 15 | * -1 : memory allocation failed 16 | * 0 : data was converted exactly 17 | * 1 : valid data was converted approximately (using '?') 18 | * 2 : input was invalid (but still converted, using '#') 19 | * 3 : unknown encoding (but still converted, using '?') 20 | */ 21 | 22 | int utf8_encode(const char *from, char **to); 23 | int utf8_decode(const char *from, char **to); 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /src/includes/nitedrvr.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Night Driver hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/nitedrvr.c -----------*/ 8 | 9 | extern unsigned char *nitedrvr_ram; 10 | 11 | extern int nitedrvr_gear; 12 | extern int nitedrvr_track; 13 | 14 | READ_HANDLER( nitedrvr_in0_r ); 15 | READ_HANDLER( nitedrvr_in1_r ); 16 | READ_HANDLER( nitedrvr_ram_r ); 17 | READ_HANDLER( nitedrvr_steering_reset_r ); 18 | WRITE_HANDLER( nitedrvr_steering_reset_w ); 19 | WRITE_HANDLER( nitedrvr_out0_w ); 20 | WRITE_HANDLER( nitedrvr_out1_w ); 21 | WRITE_HANDLER( nitedrvr_ram_w ); 22 | 23 | void nitedrvr_crash_toggle(int dummy); 24 | 25 | /*----------- defined in vidhrdw/nitedrvr.c -----------*/ 26 | 27 | extern unsigned char *nitedrvr_hvc; 28 | WRITE_HANDLER( nitedrvr_hvc_w ); 29 | VIDEO_UPDATE( nitedrvr ); 30 | -------------------------------------------------------------------------------- /src/sound/bsmt2000.h: -------------------------------------------------------------------------------- 1 | /********************************************************************************************** 2 | * 3 | * Data East BSMT2000 driver 4 | * by Aaron Giles 5 | * 6 | **********************************************************************************************/ 7 | 8 | #ifndef BSMT2000_H 9 | #define BSMT2000_H 10 | 11 | #define MAX_BSMT2000 1 12 | 13 | struct BSMT2000interface 14 | { 15 | int num; /* total number of chips */ 16 | int baseclock[MAX_BSMT2000]; /* input clock */ 17 | int voices[MAX_BSMT2000]; /* number of voices (11 or 12) */ 18 | int region[MAX_BSMT2000]; /* memory region where the sample ROM lives */ 19 | int mixing_level[MAX_BSMT2000]; /* master volume */ 20 | }; 21 | 22 | int BSMT2000_sh_start(const struct MachineSound *msound); 23 | void BSMT2000_sh_stop(void); 24 | void BSMT2000_sh_reset(void); 25 | 26 | WRITE16_HANDLER( BSMT2000_data_0_w ); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /src/includes/unico.h: -------------------------------------------------------------------------------- 1 | /* Variables needed by vidhrdw: */ 2 | 3 | extern int unico_has_lightgun; 4 | 5 | /* Variables defined in vidhrdw: */ 6 | 7 | extern data16_t *unico_vram_0, *unico_scrollx_0, *unico_scrolly_0; 8 | extern data16_t *unico_vram_1, *unico_scrollx_1, *unico_scrolly_1; 9 | extern data16_t *unico_vram_2, *unico_scrollx_2, *unico_scrolly_2; 10 | extern data32_t *unico_vram32_0, *unico_vram32_1, *unico_vram32_2, *unico_scroll32; 11 | 12 | /* Functions defined in vidhrdw: */ 13 | 14 | WRITE16_HANDLER( unico_vram_0_w ); 15 | WRITE16_HANDLER( unico_vram_1_w ); 16 | WRITE16_HANDLER( unico_vram_2_w ); 17 | WRITE16_HANDLER( unico_palette_w ); 18 | 19 | WRITE32_HANDLER( unico_vram32_0_w ); 20 | WRITE32_HANDLER( unico_vram32_1_w ); 21 | WRITE32_HANDLER( unico_vram32_2_w ); 22 | WRITE32_HANDLER( unico_palette32_w ); 23 | 24 | VIDEO_START( unico ); 25 | VIDEO_UPDATE( unico ); 26 | 27 | VIDEO_START( zeropnt2 ); 28 | VIDEO_UPDATE( zeropnt2 ); 29 | 30 | -------------------------------------------------------------------------------- /src/includes/fromance.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Game Driver for Video System Mahjong series and Pipe Dream. 4 | 5 | Driver by Takahiro Nogi 2001/02/04 - 6 | and Bryan McPhail, Nicola Salmoria, Aaron Giles 7 | 8 | ***************************************************************************/ 9 | 10 | #include "driver.h" 11 | 12 | 13 | /*----------- defined in vidhrdw/fromance.c -----------*/ 14 | 15 | VIDEO_START( fromance ); 16 | VIDEO_START( nekkyoku ); 17 | VIDEO_UPDATE( fromance ); 18 | VIDEO_UPDATE( pipedrm ); 19 | 20 | WRITE_HANDLER( fromance_crtc_data_w ); 21 | WRITE_HANDLER( fromance_crtc_register_w ); 22 | 23 | WRITE_HANDLER( fromance_gfxreg_w ); 24 | 25 | WRITE_HANDLER( fromance_scroll_w ); 26 | 27 | READ_HANDLER( fromance_paletteram_r ); 28 | WRITE_HANDLER( fromance_paletteram_w ); 29 | 30 | READ_HANDLER( fromance_videoram_r ); 31 | WRITE_HANDLER( fromance_videoram_w ); 32 | -------------------------------------------------------------------------------- /src/vidhrdw/blockade_vidhrdw.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | #include "vidhrdw/generic.h" 3 | 4 | static struct tilemap *bg_tilemap; 5 | 6 | WRITE_HANDLER( blockade_videoram_w ) 7 | { 8 | if (videoram[offset] != data) 9 | { 10 | videoram[offset] = data; 11 | tilemap_mark_tile_dirty(bg_tilemap, offset); 12 | } 13 | 14 | if (input_port_3_r(0) & 0x80) 15 | { 16 | logerror("blockade_videoram_w: scanline %d\n", cpu_getscanline()); 17 | cpu_spinuntil_int(); 18 | } 19 | } 20 | 21 | static void get_bg_tile_info(int tile_index) 22 | { 23 | int code = videoram[tile_index]; 24 | 25 | SET_TILE_INFO(0, code, 0, 0) 26 | } 27 | 28 | VIDEO_START( blockade ) 29 | { 30 | bg_tilemap = tilemap_create(get_bg_tile_info, tilemap_scan_rows, 31 | TILEMAP_OPAQUE, 8, 8, 32, 32); 32 | 33 | if ( !bg_tilemap ) 34 | return 1; 35 | 36 | return 0; 37 | } 38 | 39 | VIDEO_UPDATE( blockade ) 40 | { 41 | tilemap_draw(bitmap, &Machine->visible_area, bg_tilemap, 0, 0); 42 | } 43 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/utils/crc32.c: -------------------------------------------------------------------------------- 1 | /* gcc -O3 -o crc32 crc32.c -lz */ 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | #include 8 | 9 | int main(int argc, const char* argv[]) 10 | { 11 | if (argc != 2 ) 12 | { 13 | fprintf( stderr, "Usage: crc32 \n" ); 14 | return 1; 15 | } 16 | 17 | FILE *file = fopen(argv[1], "rb"); 18 | 19 | if (file) 20 | { 21 | uint32_t crc = encoding_crc32(0L, NULL, 0 ); 22 | 23 | for (;;) 24 | { 25 | uint8_t buffer[16384]; 26 | 27 | int numread = fread((void*)buffer, 1, sizeof(buffer), file); 28 | 29 | if (numread > 0) 30 | crc = encoding_crc32( crc, buffer, numread ); 31 | else 32 | break; 33 | } 34 | 35 | fclose(file); 36 | 37 | printf("%08x\n", crc); 38 | return 0; 39 | } 40 | 41 | fprintf(stderr, "Error opening input file: %s\n", strerror(errno)); 42 | return 1; 43 | } 44 | -------------------------------------------------------------------------------- /src/machine/irem_cpu.h: -------------------------------------------------------------------------------- 1 | 2 | extern const unsigned char gunforce_decryption_table[]; 3 | extern const unsigned char bomberman_decryption_table[]; 4 | extern const unsigned char lethalth_decryption_table[]; 5 | extern const unsigned char dynablaster_decryption_table[]; 6 | extern const unsigned char mysticri_decryption_table[]; 7 | extern const unsigned char majtitl2_decryption_table[]; 8 | extern const unsigned char hook_decryption_table[]; 9 | extern const unsigned char rtypeleo_decryption_table[]; 10 | extern const unsigned char inthunt_decryption_table[]; 11 | extern const unsigned char gussun_decryption_table[]; 12 | extern const unsigned char leagueman_decryption_table[]; 13 | extern const unsigned char psoldier_decryption_table[]; 14 | extern const unsigned char dsoccr94_decryption_table[]; 15 | extern const unsigned char matchit2_decryption_table[]; 16 | 17 | extern const unsigned char test_decryption_table[]; 18 | extern void irem_cpu_decrypt(int cpu,const unsigned char *decryption_table); 19 | -------------------------------------------------------------------------------- /src/vidhrdw/m79amb_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | vidhrdw.c 4 | 5 | Functions to emulate the video hardware of the machine. 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | #include "vidhrdw/generic.h" 11 | 12 | 13 | 14 | /* palette colors (see drivers/8080bw.c) */ 15 | enum { BLACK, WHITE }; 16 | 17 | 18 | static unsigned char mask = 0; 19 | 20 | WRITE_HANDLER( ramtek_mask_w ) 21 | { 22 | mask = data; 23 | } 24 | 25 | WRITE_HANDLER( ramtek_videoram_w ) 26 | { 27 | data = data & ~mask; 28 | 29 | if (videoram[offset] != data) 30 | { 31 | int i,x,y; 32 | 33 | videoram[offset] = data; 34 | 35 | y = offset / 32; 36 | x = 8 * (offset % 32); 37 | 38 | for (i = 0; i < 8; i++) 39 | { 40 | plot_pixel(tmpbitmap, x, y, Machine->pens[(data & 0x80) ? WHITE : BLACK]); 41 | 42 | x++; 43 | data <<= 1; 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /src/sound/c6280.h: -------------------------------------------------------------------------------- 1 | #ifndef _C6280_H_ 2 | #define _C6280_H_ 3 | 4 | #define MAX_C6280 2 5 | 6 | struct C6280_interface 7 | { 8 | int num; 9 | int volume[MAX_C6280]; 10 | int clock[MAX_C6280]; 11 | }; 12 | 13 | typedef struct { 14 | UINT16 frequency; 15 | UINT8 control; 16 | UINT8 balance; 17 | UINT8 waveform[32]; 18 | UINT8 index; 19 | INT16 dda; 20 | UINT8 noise_control; 21 | UINT32 noise_counter; 22 | UINT32 counter; 23 | } t_channel; 24 | 25 | typedef struct { 26 | UINT8 select; 27 | UINT8 balance; 28 | UINT8 lfo_frequency; 29 | UINT8 lfo_control; 30 | t_channel channel[8]; 31 | INT16 volume_table[32]; 32 | UINT32 noise_freq_tab[32]; 33 | UINT32 wave_freq_tab[4096]; 34 | } c6280_t; 35 | 36 | /* Function prototypes */ 37 | int c6280_sh_start(const struct MachineSound *msound); 38 | void c6280_sh_stop(void); 39 | WRITE_HANDLER( C6280_0_w ); 40 | WRITE_HANDLER( C6280_1_w ); 41 | 42 | #endif /* _C6280_H_ */ 43 | -------------------------------------------------------------------------------- /src/includes/decoprot.h: -------------------------------------------------------------------------------- 1 | READ16_HANDLER( deco16_60_prot_r ); 2 | READ16_HANDLER( deco16_66_prot_r ); 3 | READ16_HANDLER( deco16_104_prot_r ); 4 | READ16_HANDLER( deco16_104_cninja_prot_r ); 5 | READ16_HANDLER( dietgo_104_prot_r ); 6 | READ16_HANDLER( deco16_104_rohga_prot_r ); 7 | READ16_HANDLER( deco16_146_funkyjet_prot_r ); 8 | READ16_HANDLER( deco16_146_nitroball_prot_r ); 9 | READ16_HANDLER( deco16_104_pktgaldx_prot_r ); 10 | READ32_HANDLER( deco32_fghthist_prot_r ); 11 | 12 | WRITE16_HANDLER( deco16_60_prot_w ); 13 | WRITE16_HANDLER( deco16_66_prot_w ); 14 | WRITE16_HANDLER( deco16_104_prot_w ); 15 | WRITE16_HANDLER( deco16_104_cninja_prot_w ); 16 | WRITE16_HANDLER( dietgo_104_prot_w ); 17 | WRITE16_HANDLER( deco16_104_rohga_prot_w ); 18 | WRITE16_HANDLER( deco16_146_funkyjet_prot_w ); 19 | WRITE16_HANDLER( deco16_146_nitroball_prot_w ); 20 | WRITE16_HANDLER( deco16_104_pktgaldx_prot_w ); 21 | WRITE32_HANDLER( deco32_fghthist_prot_w ); 22 | 23 | extern data16_t *deco16_prot_ram; 24 | extern data32_t *deco32_prot_ram; 25 | -------------------------------------------------------------------------------- /src/machine/tait8741.h: -------------------------------------------------------------------------------- 1 | #ifndef __TAITO8741__ 2 | #define __TAITO8741__ 3 | 4 | #define MAX_TAITO8741 4 5 | 6 | /* NEC 8741 program mode */ 7 | #define TAITO8741_MASTER 0 8 | #define TAITO8741_SLAVE 1 9 | #define TAITO8741_PORT 2 10 | 11 | struct TAITO8741interface 12 | { 13 | int num; 14 | int mode[MAX_TAITO8741]; /* program select */ 15 | int serial_connect[MAX_TAITO8741]; /* serial port connection */ 16 | mem_read_handler portHandler_r[MAX_TAITO8741]; /* parallel port handler */ 17 | }; 18 | 19 | int TAITO8741_start(const struct TAITO8741interface *taito8741intf); 20 | void TAITO8741_stop(void); 21 | 22 | void TAITO8741_reset(int num); 23 | 24 | /* write handler */ 25 | WRITE_HANDLER( TAITO8741_0_w ); 26 | WRITE_HANDLER( TAITO8741_1_w ); 27 | WRITE_HANDLER( TAITO8741_2_w ); 28 | WRITE_HANDLER( TAITO8741_3_w ); 29 | /* read handler */ 30 | READ_HANDLER( TAITO8741_0_r ); 31 | READ_HANDLER( TAITO8741_1_r ); 32 | READ_HANDLER( TAITO8741_2_r ); 33 | READ_HANDLER( TAITO8741_3_r ); 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /src/sound/5220intf.h: -------------------------------------------------------------------------------- 1 | #ifndef intf5220_h 2 | #define intf5220_h 3 | 4 | struct TMS5220interface 5 | { 6 | int baseclock; /* clock rate = 80 * output sample rate, */ 7 | /* usually 640000 for 8000 Hz sample rate or */ 8 | /* usually 800000 for 10000 Hz sample rate. */ 9 | int mixing_level; 10 | void (*irq)(int state); /* IRQ callback function */ 11 | 12 | int (*read)(int count); /* speech ROM read callback */ 13 | void (*load_address)(int data); /* speech ROM load address callback */ 14 | void (*read_and_branch)(void); /* speech ROM read and branch callback */ 15 | }; 16 | 17 | int tms5220_sh_start(const struct MachineSound *msound); 18 | void tms5220_sh_stop(void); 19 | void tms5220_sh_update(void); 20 | 21 | WRITE_HANDLER( tms5220_data_w ); 22 | READ_HANDLER( tms5220_status_r ); 23 | int tms5220_ready_r(void); 24 | double tms5220_time_to_ready(void); 25 | int tms5220_int_r(void); 26 | 27 | void tms5220_reset(void); 28 | void tms5220_set_frequency(int frequency); 29 | 30 | #endif 31 | 32 | -------------------------------------------------------------------------------- /src/sound/samples.h: -------------------------------------------------------------------------------- 1 | #ifndef SAMPLES_H 2 | #define SAMPLES_H 3 | 4 | struct Samplesinterface 5 | { 6 | int channels; /* number of discrete audio channels needed */ 7 | int volume; /* global volume for all samples */ 8 | const char **samplenames; 9 | }; 10 | 11 | 12 | /* Start one of the samples loaded from disk. Note: channel must be in the range */ 13 | /* 0 .. Samplesinterface->channels-1. It is NOT the discrete channel to pass to */ 14 | /* mixer_play_sample() */ 15 | void sample_start(int channel,int samplenum,int loop); 16 | void sample_set_freq(int channel,int freq); 17 | 18 | void sample_set_volume(int channel,int volume); 19 | void sample_set_stereo_volume(int channel,int volume_left, int volume_right); 20 | void ost_sample_set_volume(int channel,int volume); 21 | void ost_sample_set_stereo_volume(int channel,int volume_left, int volume_right); 22 | 23 | void sample_stop(int channel); 24 | int sample_playing(int channel); 25 | 26 | int samples_sh_start(const struct MachineSound *msound); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /src/includes/lasso.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Lasso and similar hardware 4 | 5 | ***************************************************************************/ 6 | 7 | /* defined in vidhrdw/ */ 8 | extern data8_t *lasso_videoram; 9 | extern data8_t *lasso_colorram; 10 | extern data8_t *lasso_spriteram; 11 | extern size_t lasso_spriteram_size; 12 | extern data8_t *lasso_bitmap_ram; 13 | extern data8_t *wwjgtin_track_scroll; 14 | 15 | WRITE_HANDLER( lasso_videoram_w ); 16 | WRITE_HANDLER( lasso_colorram_w ); 17 | WRITE_HANDLER( lasso_backcolor_w ); 18 | WRITE_HANDLER( lasso_video_control_w ); 19 | WRITE_HANDLER( wwjgtin_video_control_w ); 20 | WRITE_HANDLER( pinbo_video_control_w ); 21 | WRITE_HANDLER( wwjgtin_lastcolor_w ); 22 | 23 | PALETTE_INIT( lasso ); 24 | PALETTE_INIT( wwjgtin ); 25 | 26 | VIDEO_START( lasso ); 27 | VIDEO_START( wwjgtin ); 28 | VIDEO_START( pinbo ); 29 | 30 | VIDEO_UPDATE( lasso ); 31 | VIDEO_UPDATE( chameleo ); 32 | VIDEO_UPDATE( wwjgtin ); 33 | -------------------------------------------------------------------------------- /src/includes/homedata.h: -------------------------------------------------------------------------------- 1 | extern data8_t *homedata_vreg; 2 | extern int homedata_visible_page; 3 | extern int homedata_priority; 4 | extern data8_t reikaids_which; 5 | 6 | WRITE_HANDLER( mrokumei_videoram_w ); 7 | WRITE_HANDLER( reikaids_videoram_w ); 8 | WRITE_HANDLER( pteacher_videoram_w ); 9 | WRITE_HANDLER( reikaids_gfx_bank_w ); 10 | WRITE_HANDLER( pteacher_gfx_bank_w ); 11 | WRITE_HANDLER( homedata_blitter_param_w ); 12 | WRITE_HANDLER( mrokumei_blitter_bank_w ); 13 | WRITE_HANDLER( reikaids_blitter_bank_w ); 14 | WRITE_HANDLER( pteacher_blitter_bank_w ); 15 | WRITE_HANDLER( mrokumei_blitter_start_w ); 16 | WRITE_HANDLER( reikaids_blitter_start_w ); 17 | WRITE_HANDLER( pteacher_blitter_start_w ); 18 | 19 | PALETTE_INIT( mrokumei ); 20 | PALETTE_INIT( reikaids ); 21 | PALETTE_INIT( pteacher ); 22 | 23 | VIDEO_START( mrokumei ); 24 | VIDEO_START( reikaids ); 25 | VIDEO_START( pteacher ); 26 | VIDEO_START( lemnangl ); 27 | VIDEO_UPDATE( mrokumei ); 28 | VIDEO_UPDATE( reikaids ); 29 | VIDEO_UPDATE( pteacher ); 30 | VIDEO_EOF( homedata ); 31 | -------------------------------------------------------------------------------- /src/sound/saa1099.h: -------------------------------------------------------------------------------- 1 | #ifndef saa1099_h 2 | #define saa1099_h 3 | 4 | /********************************************** 5 | Philips SAA1099 Sound driver 6 | **********************************************/ 7 | 8 | #define MAX_SAA1099 2 9 | 10 | /* interface */ 11 | struct SAA1099_interface 12 | { 13 | int numchips; /* number of chips */ 14 | int volume[MAX_SAA1099][2]; /* playback volume */ 15 | }; 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | int saa1099_sh_start(const struct MachineSound *msound); 22 | void saa1099_sh_stop(void); 23 | 24 | WRITE_HANDLER( saa1099_control_port_0_w ); 25 | WRITE_HANDLER( saa1099_write_port_0_w ); 26 | WRITE_HANDLER( saa1099_control_port_1_w ); 27 | WRITE_HANDLER( saa1099_write_port_1_w ); 28 | 29 | WRITE16_HANDLER( saa1099_control_port_0_lsb_w ); 30 | WRITE16_HANDLER( saa1099_write_port_0_lsb_w ); 31 | WRITE16_HANDLER( saa1099_control_port_1_lsb_w ); 32 | WRITE16_HANDLER( saa1099_write_port_1_lsb_w ); 33 | 34 | #ifdef __cplusplus 35 | } 36 | #endif 37 | 38 | #endif 39 | -------------------------------------------------------------------------------- /src/vidhrdw/avalnche_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari Avalanche hardware 4 | 5 | ***************************************************************************/ 6 | 7 | #include "driver.h" 8 | #include "vidhrdw/generic.h" 9 | #include "artwork.h" 10 | #include "avalnche.h" 11 | 12 | 13 | WRITE_HANDLER( avalnche_videoram_w ) 14 | { 15 | videoram[offset] = data; 16 | 17 | if (offset >= 0x200) 18 | { 19 | int x,y,i; 20 | 21 | x = 8 * (offset % 32); 22 | y = offset / 32; 23 | 24 | for (i = 0;i < 8;i++) 25 | plot_pixel(tmpbitmap,x+7-i,y,Machine->pens[(data >> i) & 1]); 26 | } 27 | } 28 | 29 | 30 | VIDEO_UPDATE( avalnche ) 31 | { 32 | if (get_vh_global_attribute_changed()) 33 | { 34 | int offs; 35 | 36 | for (offs = 0;offs < videoram_size; offs++) 37 | avalnche_videoram_w(offs,videoram[offs]); 38 | } 39 | 40 | /* copy the character mapped graphics */ 41 | copybitmap(bitmap,tmpbitmap,0,0,0,0,&Machine->visible_area,TRANSPARENCY_NONE,0); 42 | } 43 | -------------------------------------------------------------------------------- /src/sound/vlm5030.h: -------------------------------------------------------------------------------- 1 | #ifndef VLM5030_h 2 | #define VLM5030_h 3 | 4 | struct VLM5030interface 5 | { 6 | int baseclock; /* master clock (normaly 3.58MHz) */ 7 | int volume; /* volume */ 8 | int memory_region; /* memory region of speech rom */ 9 | int memory_size; /* memory size of speech rom (0=memory region length) */ 10 | }; 11 | 12 | /* use sampling data when speech_rom == 0 */ 13 | int VLM5030_sh_start(const struct MachineSound *msound); 14 | void VLM5030_sh_stop (void); 15 | void VLM5030_sh_update (void); 16 | 17 | /* set speech rom address */ 18 | void VLM5030_set_rom(void *speech_rom); 19 | 20 | /* get BSY pin level */ 21 | int VLM5030_BSY(void); 22 | /* latch contoll data */ 23 | WRITE_HANDLER( VLM5030_data_w ); 24 | /* set RST pin level : reset / set table address A8-A15 */ 25 | void VLM5030_RST (int pin ); 26 | /* set VCU pin level : ?? unknown */ 27 | void VLM5030_VCU(int pin ); 28 | /* set ST pin level : set table address A0-A7 / start speech */ 29 | void VLM5030_ST(int pin ); 30 | 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /src/cpu/spc700/spc700ds.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER__SPC700DS 2 | #define HEADER__SPC700DS 3 | /* ======================================================================== */ 4 | /* =============================== COPYRIGHT ============================== */ 5 | /* ======================================================================== */ 6 | /* 7 | 8 | Sony SPC700 CPU Emulator V1.0 9 | 10 | Copyright (c) 2000 Karl Stenerud 11 | All rights reserved. 12 | 13 | Permission is granted to use this source code for non-commercial purposes. 14 | To use this code for commercial purposes, you must get permission from the 15 | author (Karl Stenerud) at karl@higashiyama-unet.ocn.ne.jp. 16 | 17 | 18 | */ 19 | 20 | int spc700_disassemble(char* buff, unsigned int pc); 21 | 22 | unsigned int spc700_read_8_disassembler(unsigned int address); 23 | 24 | #include "cpuintrf.h" 25 | #include "memory.h" 26 | #include "driver.h" 27 | #include "state.h" 28 | #include "mamedbg.h" 29 | #define spc700_read_8_disassembler(addr) cpu_readmem16(addr) 30 | 31 | 32 | #endif /* HEADER__SPC700DS */ 33 | -------------------------------------------------------------------------------- /src/sound/k053260.h: -------------------------------------------------------------------------------- 1 | /********************************************************* 2 | 3 | Konami 053260 PCM/ADPCM Sound Chip 4 | 5 | *********************************************************/ 6 | #ifndef __K053260_H__ 7 | #define __K053260_H__ 8 | 9 | #define MAX_053260 2 10 | 11 | struct K053260_interface { 12 | int num; /* number of chips */ 13 | int clock[MAX_053260]; /* clock */ 14 | int region[MAX_053260]; /* memory region of sample ROM(s) */ 15 | int mixing_level[MAX_053260][2]; /* volume */ 16 | void (*irq[MAX_053260])( int param ); /* called on SH1 complete cycle ( clock / 32 ) */ 17 | }; 18 | 19 | 20 | int K053260_sh_start( const struct MachineSound *msound ); 21 | void K053260_sh_stop( void ); 22 | 23 | WRITE_HANDLER( K053260_0_w ); 24 | WRITE_HANDLER( K053260_1_w ); 25 | READ_HANDLER( K053260_0_r ); 26 | READ_HANDLER( K053260_1_r ); 27 | WRITE16_HANDLER( K053260_0_lsb_w ); 28 | READ16_HANDLER( K053260_0_lsb_r ); 29 | WRITE16_HANDLER( K053260_1_lsb_w ); 30 | READ16_HANDLER( K053260_1_lsb_r ); 31 | 32 | #endif /* __K053260_H__ */ 33 | -------------------------------------------------------------------------------- /src/vidhrdw/4enraya_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | vidhrdw.c 4 | 5 | Functions to emulate the video hardware of the machine. 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | #include "vidhrdw/generic.h" 11 | 12 | static struct tilemap *tilemap; 13 | 14 | WRITE_HANDLER( fenraya_videoram_w ) 15 | { 16 | videoram[(offset&0x3ff)*2]=data; 17 | videoram[(offset&0x3ff)*2+1]=(offset&0xc00)>>10; 18 | tilemap_mark_tile_dirty(tilemap,offset&0x3ff); 19 | } 20 | 21 | static void get_tile_info(int tile_index) 22 | { 23 | int code = videoram[tile_index*2]+(videoram[tile_index*2+1]<<8); 24 | SET_TILE_INFO( 25 | 0, 26 | code, 27 | 0, 28 | 0) 29 | } 30 | 31 | VIDEO_START( 4enraya ) 32 | { 33 | tilemap = tilemap_create( get_tile_info,tilemap_scan_rows,TILEMAP_OPAQUE,8,8,32,32 ); 34 | return video_start_generic(); 35 | } 36 | 37 | VIDEO_UPDATE( 4enraya) 38 | { 39 | tilemap_draw(bitmap,cliprect,tilemap, 0,0); 40 | } 41 | -------------------------------------------------------------------------------- /src/includes/midvunit.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Driver for Midway V-Unit games 4 | 5 | **************************************************************************/ 6 | 7 | #include "midwunit.h" 8 | 9 | 10 | /*----------- defined in vidhrdw/midvunit.c -----------*/ 11 | 12 | extern data16_t *midvunit_videoram; 13 | extern data32_t *midvunit_textureram; 14 | 15 | WRITE32_HANDLER( midvunit_dma_queue_w ); 16 | READ32_HANDLER( midvunit_dma_queue_entries_r ); 17 | READ32_HANDLER( midvunit_dma_trigger_r ); 18 | 19 | WRITE32_HANDLER( midvunit_page_control_w ); 20 | READ32_HANDLER( midvunit_page_control_r ); 21 | 22 | WRITE32_HANDLER( midvunit_video_control_w ); 23 | READ32_HANDLER( midvunit_scanline_r ); 24 | 25 | WRITE32_HANDLER( midvunit_videoram_w ); 26 | READ32_HANDLER( midvunit_videoram_r ); 27 | 28 | WRITE32_HANDLER( midvunit_paletteram_w ); 29 | 30 | WRITE32_HANDLER( midvunit_textureram_w ); 31 | READ32_HANDLER( midvunit_textureram_r ); 32 | 33 | VIDEO_START( midvunit ); 34 | VIDEO_UPDATE( midvunit ); 35 | -------------------------------------------------------------------------------- /src/includes/skydiver.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Skydiver hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in vidhrdw/skydiver.c -----------*/ 8 | 9 | extern data8_t *skydiver_videoram; 10 | 11 | MACHINE_INIT( skydiver ); 12 | WRITE_HANDLER( skydiver_videoram_w ); 13 | WRITE_HANDLER( skydiver_wram_w ); /* the signal is WRAM, presumably Work RAM */ 14 | READ_HANDLER( skydiver_wram_r ); 15 | WRITE_HANDLER( skydiver_start_lamp_1_w ); 16 | WRITE_HANDLER( skydiver_start_lamp_2_w ); 17 | WRITE_HANDLER( skydiver_lamp_s_w ); 18 | WRITE_HANDLER( skydiver_lamp_k_w ); 19 | WRITE_HANDLER( skydiver_lamp_y_w ); 20 | WRITE_HANDLER( skydiver_lamp_d_w ); 21 | WRITE_HANDLER( skydiver_lamp_i_w ); 22 | WRITE_HANDLER( skydiver_lamp_v_w ); 23 | WRITE_HANDLER( skydiver_lamp_e_w ); 24 | WRITE_HANDLER( skydiver_lamp_r_w ); 25 | WRITE_HANDLER( skydiver_width_w ); 26 | WRITE_HANDLER( skydiver_coin_lockout_w ); 27 | VIDEO_START( skydiver ); 28 | VIDEO_UPDATE( skydiver ); 29 | -------------------------------------------------------------------------------- /src/includes/irobot.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari I, Robot hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/irobot.c -----------*/ 8 | 9 | extern UINT8 irvg_clear; 10 | extern UINT8 irobot_bufsel; 11 | extern UINT8 irobot_alphamap; 12 | extern UINT8 *irobot_combase; 13 | 14 | DRIVER_INIT( irobot ); 15 | MACHINE_INIT( irobot ); 16 | 17 | READ_HANDLER( irobot_status_r ); 18 | WRITE_HANDLER( irobot_statwr_w ); 19 | WRITE_HANDLER( irobot_out0_w ); 20 | WRITE_HANDLER( irobot_rom_banksel_w ); 21 | READ_HANDLER( irobot_control_r ); 22 | WRITE_HANDLER( irobot_control_w ); 23 | READ_HANDLER( irobot_sharedmem_r ); 24 | WRITE_HANDLER( irobot_sharedmem_w ); 25 | 26 | 27 | /*----------- defined in vidhrdw/irobot.c -----------*/ 28 | 29 | PALETTE_INIT( irobot ); 30 | VIDEO_START( irobot ); 31 | VIDEO_UPDATE( irobot ); 32 | 33 | WRITE_HANDLER( irobot_paletteram_w ); 34 | 35 | void irobot_poly_clear(void); 36 | void irobot_run_video(void); 37 | -------------------------------------------------------------------------------- /src/includes/berzerk.h: -------------------------------------------------------------------------------- 1 | /* defined in machine/berzerk.c */ 2 | 3 | MACHINE_INIT( berzerk ); 4 | INTERRUPT_GEN( berzerk_interrupt ); 5 | WRITE_HANDLER( berzerk_irq_enable_w ); 6 | WRITE_HANDLER( berzerk_nmi_enable_w ); 7 | WRITE_HANDLER( berzerk_nmi_disable_w ); 8 | READ_HANDLER( berzerk_nmi_enable_r ); 9 | READ_HANDLER( berzerk_nmi_disable_r ); 10 | READ_HANDLER( berzerk_led_on_r ); 11 | READ_HANDLER( berzerk_led_off_r ); 12 | 13 | 14 | /* defined in vidrhdw/berzerk.c */ 15 | 16 | extern data8_t *berzerk_magicram; 17 | 18 | PALETTE_INIT( berzerk ); 19 | WRITE_HANDLER( berzerk_videoram_w ); 20 | WRITE_HANDLER( berzerk_colorram_w ); 21 | WRITE_HANDLER( berzerk_magicram_w ); 22 | WRITE_HANDLER( berzerk_magicram_control_w ); 23 | READ_HANDLER( berzerk_port_4e_r ); 24 | 25 | 26 | /* defined in sndhrdw/berzerk.c */ 27 | 28 | extern struct Samplesinterface berzerk_samples_interface; 29 | extern struct CustomSound_interface berzerk_custom_interface; 30 | WRITE_HANDLER( berzerk_sound_control_a_w ); 31 | WRITE_HANDLER( berzerk_sound_control_b_w ); 32 | READ_HANDLER( berzerk_voiceboard_r ); 33 | -------------------------------------------------------------------------------- /src/ost_samples.h: -------------------------------------------------------------------------------- 1 | /********************************************************************* 2 | 3 | OST sample support 4 | 5 | *********************************************************************/ 6 | 7 | enum 8 | { 9 | OST_SUPPORT_DISABLED = 0, 10 | OST_SUPPORT_BIONICC, 11 | OST_SUPPORT_CNINJA, 12 | OST_SUPPORT_CONTRA, 13 | OST_SUPPORT_DDRAGON, 14 | OST_SUPPORT_FFIGHT, 15 | OST_SUPPORT_GNG, 16 | OST_SUPPORT_HCASTLE, 17 | OST_SUPPORT_IKARI, 18 | OST_SUPPORT_MK, 19 | OST_SUPPORT_MOONWALKER, 20 | OST_SUPPORT_NBA_JAM, 21 | OST_SUPPORT_OUTRUN, 22 | OST_SUPPORT_ROBOCOP, 23 | OST_SUPPORT_SHINOBI, 24 | OST_SUPPORT_SF1, 25 | OST_SUPPORT_SF2, 26 | OST_SUPPORT_ULTRAMAN, 27 | OST_SUPPORT_VBALL 28 | }; 29 | 30 | 31 | extern bool ost_support_enabled (int ost); 32 | extern bool (*generate_ost_sound) (int); 33 | extern void ost_init(void); 34 | 35 | extern void install_ost_support (struct InternalMachineDriver *machine, int ost); 36 | 37 | #define MDRV_INSTALL_OST_SUPPORT(ost) \ 38 | install_ost_support(machine, ost); \ 39 | 40 | 41 | extern void ost_fade_volume (void); 42 | -------------------------------------------------------------------------------- /src/includes/namcond1.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | namcond1.h 4 | 5 | Common functions & declarations for the Namco ND-1 driver 6 | 7 | ***************************************************************************/ 8 | 9 | /* VIDHRDW */ 10 | 11 | #define GFX_8X8_4BIT 0 12 | #define GFX_16X16_4BIT 1 13 | #define GFX_32X32_4BIT 2 14 | #define GFX_64X64_4BIT 3 15 | #define GFX_8X8_8BIT 4 16 | #define GFX_16X16_8BIT 5 17 | 18 | extern void nvsram( offs_t offset, data16_t data ); 19 | 20 | /* MACHINE */ 21 | extern int namcond1_gfxbank; 22 | 23 | extern unsigned short int *namcond1_shared_ram; 24 | extern unsigned short int *namcond1_eeprom; 25 | 26 | extern READ16_HANDLER( namcond1_shared_ram_r ); 27 | extern READ16_HANDLER( namcond1_cuskey_r ); 28 | extern WRITE16_HANDLER( namcond1_shared_ram_w ); 29 | extern WRITE16_HANDLER( namcond1_cuskey_w ); 30 | 31 | NVRAM_HANDLER( namcond1 ); 32 | MACHINE_INIT( namcond1 ); 33 | 34 | /* VIDHRDW */ 35 | 36 | // to be removed 37 | extern READ16_HANDLER( debug_trigger ); 38 | 39 | -------------------------------------------------------------------------------- /src/libretro/libretro-common/libco/libco.c: -------------------------------------------------------------------------------- 1 | /* 2 | libco 3 | auto-selection module 4 | license: public domain 5 | */ 6 | 7 | #ifdef __GENODE__ 8 | void *genode_alloc_secondary_stack(unsigned long stack_size); 9 | void genode_free_secondary_stack(void *stack); 10 | #endif 11 | 12 | #if defined _MSC_VER 13 | #include 14 | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 15 | #include "fiber.c" 16 | #elif defined _M_IX86 17 | #include "x86.c" 18 | #elif defined _M_AMD64 19 | #include "amd64.c" 20 | #else 21 | #include "fiber.c" 22 | #endif 23 | #elif defined __GNUC__ 24 | #if defined __i386__ 25 | #include "x86.c" 26 | #elif defined __amd64__ 27 | #include "amd64.c" 28 | #elif defined _ARCH_PPC 29 | #include "ppc.c" 30 | #elif defined(__aarch64__) 31 | #include "aarch64.c" 32 | #elif defined VITA 33 | #include "scefiber.c" 34 | #elif defined(__ARM_EABI__) || defined(__arm__) 35 | #include "armeabi.c" 36 | #else 37 | #include "sjlj.c" 38 | #endif 39 | #else 40 | #error "libco: unsupported processor, compiler or operating system" 41 | #endif 42 | -------------------------------------------------------------------------------- /src/cpu/g65816/g65816ds.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER__G65816DS 2 | #define HEADER__G65816DS 3 | /* ======================================================================== */ 4 | /* =============================== COPYRIGHT ============================== */ 5 | /* ======================================================================== */ 6 | /* 7 | 8 | G65C816 CPU Emulator V0.92 9 | 10 | Copyright (c) 2000 Karl Stenerud 11 | All rights reserved. 12 | 13 | Permission is granted to use this source code for non-commercial purposes. 14 | To use this code for commercial purposes, you must get permission from the 15 | author (Karl Stenerud) at karl@higashiyama-unet.ocn.ne.jp. 16 | 17 | 18 | */ 19 | 20 | int g65816_disassemble(char* buff, unsigned int pc, unsigned int pb, int m_flag, int x_flag); 21 | 22 | unsigned int g65816_read_8_disassembler(unsigned int address); 23 | 24 | #include "cpuintrf.h" 25 | #include "memory.h" 26 | #include "driver.h" 27 | #include "state.h" 28 | #include "mamedbg.h" 29 | #define g65816_read_8_disassembler(addr) cpu_readmem24(addr) 30 | 31 | 32 | #endif /* HEADER__G65816DS */ 33 | -------------------------------------------------------------------------------- /src/includes/kyugo.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Kyugo hardware games 4 | 5 | ***************************************************************************/ 6 | 7 | /* defined in machine/kyugo.c */ 8 | extern data8_t *kyugo_sharedram; 9 | 10 | MACHINE_INIT( kyugo ); 11 | 12 | READ_HANDLER( kyugo_sharedram_r ); 13 | 14 | WRITE_HANDLER( kyugo_sharedram_w ); 15 | WRITE_HANDLER( kyugo_sub_cpu_control_w ); 16 | 17 | /* defined in vidhrdw/kyugo.c */ 18 | extern data8_t *kyugo_fgvideoram; 19 | extern data8_t *kyugo_bgvideoram; 20 | extern data8_t *kyugo_bgattribram; 21 | extern data8_t *kyugo_spriteram_1; 22 | extern data8_t *kyugo_spriteram_2; 23 | 24 | READ_HANDLER( kyugo_spriteram_2_r ); 25 | 26 | WRITE_HANDLER( kyugo_fgvideoram_w ); 27 | WRITE_HANDLER( kyugo_bgvideoram_w ); 28 | WRITE_HANDLER( kyugo_bgattribram_w ); 29 | WRITE_HANDLER( kyugo_scroll_x_lo_w ); 30 | WRITE_HANDLER( kyugo_gfxctrl_w ); 31 | WRITE_HANDLER( kyugo_scroll_y_w ); 32 | WRITE_HANDLER( kyugo_flipscreen_w ); 33 | 34 | VIDEO_START( kyugo ); 35 | 36 | VIDEO_UPDATE( kyugo ); 37 | -------------------------------------------------------------------------------- /src/machine/kyugo_machine.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Kyugo hardware games 4 | 5 | ***************************************************************************/ 6 | 7 | #include "driver.h" 8 | #include "kyugo.h" 9 | 10 | 11 | data8_t *kyugo_sharedram; 12 | 13 | 14 | /************************************* 15 | * 16 | * Machine initialization 17 | * 18 | *************************************/ 19 | 20 | MACHINE_INIT( kyugo ) 21 | { 22 | // must start with interrupts and sub CPU disabled 23 | cpu_interrupt_enable(0, 0); 24 | kyugo_sub_cpu_control_w(0, 0); 25 | } 26 | 27 | 28 | WRITE_HANDLER( kyugo_sub_cpu_control_w ) 29 | { 30 | cpu_set_halt_line(1, data ? CLEAR_LINE : ASSERT_LINE); 31 | } 32 | 33 | 34 | /************************************* 35 | * 36 | * Shared RAM handlers 37 | * 38 | *************************************/ 39 | 40 | WRITE_HANDLER( kyugo_sharedram_w ) 41 | { 42 | kyugo_sharedram[offset] = data; 43 | } 44 | 45 | 46 | READ_HANDLER( kyugo_sharedram_r ) 47 | { 48 | return kyugo_sharedram[offset]; 49 | } 50 | -------------------------------------------------------------------------------- /src/vidhrdw/clayshoo_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari Clay Shoot hardware 4 | 5 | driver by Zsolt Vasvari 6 | 7 | ****************************************************************************/ 8 | 9 | #include "driver.h" 10 | #include "vidhrdw/generic.h" 11 | 12 | 13 | /************************************* 14 | * 15 | * Palette generation 16 | * 17 | *************************************/ 18 | 19 | PALETTE_INIT( clayshoo ) 20 | { 21 | palette_set_color(0,0x00,0x00,0x00); /* black */ 22 | palette_set_color(1,0xff,0xff,0xff); /* white */ 23 | } 24 | 25 | 26 | /************************************* 27 | * 28 | * Memory handlers 29 | * 30 | *************************************/ 31 | 32 | WRITE_HANDLER( clayshoo_videoram_w ) 33 | { 34 | UINT8 x,y; 35 | int i; 36 | 37 | 38 | x = ((offset & 0x1f) << 3); 39 | y = 191 - (offset >> 5); 40 | 41 | for (i = 0; i < 8; i++) 42 | { 43 | plot_pixel(tmpbitmap, x, y, (data & 0x80) ? Machine->pens[1] : Machine->pens[0]); 44 | 45 | x++; 46 | data <<= 1; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /src/includes/starwars.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Atari Star Wars hardware 4 | 5 | ***************************************************************************/ 6 | 7 | #include "driver.h" 8 | 9 | 10 | /*----------- defined in machine/starwars.c -----------*/ 11 | 12 | WRITE_HANDLER( starwars_out_w ); 13 | READ_HANDLER( starwars_input_1_r ); 14 | 15 | READ_HANDLER( starwars_adc_r ); 16 | WRITE_HANDLER( starwars_adc_select_w ); 17 | 18 | void swmathbox_init(void); 19 | void swmathbox_reset(void); 20 | 21 | READ_HANDLER( swmathbx_prng_r ); 22 | READ_HANDLER( swmathbx_reh_r ); 23 | READ_HANDLER( swmathbx_rel_r ); 24 | 25 | WRITE_HANDLER( swmathbx_w ); 26 | 27 | 28 | /*----------- defined in sndhrdw/starwars.c -----------*/ 29 | 30 | READ_HANDLER( starwars_main_read_r ); 31 | READ_HANDLER( starwars_main_ready_flag_r ); 32 | WRITE_HANDLER( starwars_main_wr_w ); 33 | WRITE_HANDLER( starwars_soundrst_w ); 34 | 35 | READ_HANDLER( starwars_sin_r ); 36 | READ_HANDLER( starwars_m6532_r ); 37 | 38 | WRITE_HANDLER( starwars_sout_w ); 39 | WRITE_HANDLER( starwars_m6532_w ); 40 | -------------------------------------------------------------------------------- /src/includes/cps1.h: -------------------------------------------------------------------------------- 1 | #ifndef _CPS1_H_ 2 | #define _CPS1_H_ 3 | 4 | extern data16_t *cps1_gfxram; /* Video RAM */ 5 | extern data16_t *cps1_output; /* Output ports */ 6 | extern size_t cps1_gfxram_size; 7 | extern size_t cps1_output_size; 8 | 9 | extern const struct Memory_ReadAddress qsound_readmem[]; 10 | extern const struct Memory_WriteAddress qsound_writemem[]; 11 | 12 | READ16_HANDLER( qsound_sharedram1_r ); 13 | WRITE16_HANDLER( qsound_sharedram1_w ); 14 | 15 | READ16_HANDLER( cps1_eeprom_port_r ); 16 | WRITE16_HANDLER( cps1_eeprom_port_w ); 17 | 18 | READ16_HANDLER( cps1_output_r ); 19 | WRITE16_HANDLER( cps1_output_w ); 20 | 21 | WRITE16_HANDLER( cps1_gfxram_w ); 22 | 23 | WRITE16_HANDLER( cps2_objram_bank_w ); 24 | READ16_HANDLER( cps2_objram1_r ); 25 | READ16_HANDLER( cps2_objram2_r ); 26 | WRITE16_HANDLER( cps2_objram1_w ); 27 | WRITE16_HANDLER( cps2_objram2_w ); 28 | 29 | VIDEO_START( cps1 ); 30 | VIDEO_UPDATE( cps1 ); 31 | VIDEO_EOF( cps1 ); 32 | DRIVER_INIT( cps1 ); 33 | DRIVER_INIT( cps2 ); 34 | 35 | INTERRUPT_GEN( cps1_qsound_interrupt ); 36 | 37 | extern struct QSound_interface qsound_interface; 38 | 39 | extern int scanline; 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /src/sound/namco.h: -------------------------------------------------------------------------------- 1 | #ifndef namco_h 2 | #define namco_h 3 | 4 | struct namco_interface 5 | { 6 | int samplerate; /* sample rate */ 7 | int voices; /* number of voices */ 8 | int volume; /* playback volume */ 9 | int region; /* memory region; -1 to use RAM (pointed to by namco_wavedata) */ 10 | int stereo; /* set to 1 to indicate stereo (e.g., System 1) */ 11 | }; 12 | 13 | int namco_sh_start(const struct MachineSound *msound); 14 | void namco_sh_stop(void); 15 | 16 | WRITE_HANDLER( pengo_sound_enable_w ); 17 | WRITE_HANDLER( pengo_sound_w ); 18 | 19 | WRITE_HANDLER( polepos_sound_enable_w ); 20 | WRITE_HANDLER( polepos_sound_w ); 21 | 22 | WRITE_HANDLER( mappy_sound_enable_w ); 23 | WRITE_HANDLER( mappy_sound_w ); 24 | 25 | WRITE_HANDLER( namcos1_sound_w ); 26 | WRITE_HANDLER( namcos1_wavedata_w ); 27 | READ_HANDLER( namcos1_sound_r ); 28 | READ_HANDLER( namcos1_wavedata_r ); 29 | 30 | extern unsigned char *namco_soundregs; 31 | extern unsigned char *namco_wavedata; 32 | 33 | #define mappy_soundregs namco_soundregs 34 | #define pengo_soundregs namco_soundregs 35 | #define polepos_soundregs namco_soundregs 36 | 37 | #endif 38 | 39 | -------------------------------------------------------------------------------- /src/includes/fastfred.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Fast Freddie/Jump Coaster hardware 4 | driver by Zsolt Vasvari 5 | 6 | ***************************************************************************/ 7 | 8 | /* defined in vihdrdw/fastfred.h */ 9 | extern data8_t *fastfred_videoram; 10 | extern data8_t *fastfred_spriteram; 11 | extern size_t fastfred_spriteram_size; 12 | extern data8_t *fastfred_attributesram; 13 | 14 | PALETTE_INIT( fastfred ); 15 | VIDEO_START( fastfred ); 16 | WRITE_HANDLER( fastfred_videoram_w ); 17 | WRITE_HANDLER( fastfred_attributes_w ); 18 | WRITE_HANDLER( fastfred_charbank1_w ); 19 | WRITE_HANDLER( fastfred_charbank2_w ); 20 | WRITE_HANDLER( fastfred_colorbank1_w ); 21 | WRITE_HANDLER( fastfred_colorbank2_w ); 22 | WRITE_HANDLER( fastfred_background_color_w ); 23 | WRITE_HANDLER( fastfred_flip_screen_x_w ); 24 | WRITE_HANDLER( fastfred_flip_screen_y_w ); 25 | VIDEO_UPDATE( fastfred ); 26 | 27 | extern data8_t *imago_fg_videoram; 28 | VIDEO_START( imago ); 29 | VIDEO_UPDATE( imago ); 30 | WRITE_HANDLER( imago_fg_videoram_w ); 31 | WRITE_HANDLER( imago_charbank_w ); 32 | -------------------------------------------------------------------------------- /src/machine/idectrl.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Generic (PC-style) IDE controller implementation 4 | 5 | ***************************************************************************/ 6 | 7 | #include "harddisk.h" 8 | 9 | 10 | #define MAX_IDE_CONTROLLERS 1 11 | 12 | struct ide_interface 13 | { 14 | void (*interrupt)(int state); 15 | }; 16 | 17 | int ide_controller_init(int which, struct ide_interface *intf); 18 | int ide_controller_init_custom(int which, struct ide_interface *intf, struct chd_file *diskhandle); 19 | void ide_controller_reset(int which); 20 | UINT8 *ide_get_features(int which); 21 | 22 | void ide_set_master_password(int which, UINT8 *password); 23 | void ide_set_user_password(int which, UINT8 *password); 24 | 25 | READ32_HANDLER( ide_controller32_0_r ); 26 | WRITE32_HANDLER( ide_controller32_0_w ); 27 | READ32_HANDLER( ide_bus_master32_0_r ); 28 | WRITE32_HANDLER( ide_bus_master32_0_w ); 29 | 30 | READ16_HANDLER( ide_controller16_0_r ); 31 | WRITE16_HANDLER( ide_controller16_0_w ); 32 | READ16_HANDLER( ide_bus_master16_0_r ); 33 | WRITE16_HANDLER( ide_bus_master16_0_w ); 34 | -------------------------------------------------------------------------------- /src/machine/rp5h01.h: -------------------------------------------------------------------------------- 1 | #ifndef __RP5H01_H__ 2 | #define __RP5H01_H__ 3 | 4 | /* max simultaneous chips supported. change if you need more */ 5 | #define MAX_RP5H01 1 6 | 7 | struct RP5H01_interface { 8 | int num; /* number of chips */ 9 | int region[MAX_RP5H01]; /* memory region where data resides */ 10 | int offset[MAX_RP5H01]; /* memory offset within the above region where data resides */ 11 | }; 12 | 13 | int RP5H01_init( struct RP5H01_interface *interface ); 14 | void RP5H01_enable_w( int which, int data ); /* /CE */ 15 | void RP5H01_reset_w( int which, int data ); /* RESET */ 16 | void RP5H01_clock_w( int which, int data ); /* DATA CLOCK (active low) */ 17 | void RP5H01_test_w( int which, int data ); /* TEST */ 18 | int RP5H01_counter_r( int which ); /* COUNTER OUT */ 19 | int RP5H01_data_r( int which ); /* DATA */ 20 | 21 | /* direct-access stubs */ 22 | WRITE_HANDLER( RP5H01_0_enable_w ); 23 | WRITE_HANDLER( RP5H01_0_reset_w ); 24 | WRITE_HANDLER( RP5H01_0_clock_w ); 25 | WRITE_HANDLER( RP5H01_0_test_w ); 26 | READ_HANDLER( RP5H01_0_counter_r ); 27 | READ_HANDLER( RP5H01_0_data_r ); 28 | 29 | #endif /* __RP5H01_H__ */ 30 | -------------------------------------------------------------------------------- /src/includes/taito_f3.h: -------------------------------------------------------------------------------- 1 | /* This it the best way to allow game specific kludges until the system is fully understood */ 2 | enum { 3 | /* Early F3 class games, these are not cartridge games and system features may be different */ 4 | RINGRAGE=0, /* D21 */ 5 | ARABIANM, /* D29 */ 6 | RIDINGF, /* D34 */ 7 | GSEEKER, /* D40 */ 8 | TRSTAR, /* D53 */ 9 | GUNLOCK, /* D66 */ 10 | TWINQIX, 11 | UNDRFIRE, /* D67 - Heavily modified F3 hardware (different memory map) */ 12 | SCFINALS, 13 | LIGHTBR, /* D69 */ 14 | 15 | /* D77 - F3 motherboard proms, all following games are 'F3 package system' */ 16 | /* D78 I CUP */ 17 | KAISERKN, /* D84 */ 18 | DARIUSG, /* D87 */ 19 | BUBSYMPH, /* D90 */ 20 | SPCINVDX, /* D93 */ 21 | HTHERO95, /* D94 */ 22 | QTHEATER, /* D95 */ 23 | EACTION2, /* E02 */ 24 | SPCINV95, /* E06 */ 25 | QUIZHUHU, /* E08 */ 26 | PBOBBLE2, /* E10 */ 27 | GEKIRIDO, /* E11 */ 28 | KTIGER2, /* E15 */ 29 | BUBBLEM, /* E21 */ 30 | CLEOPATR, /* E28 */ 31 | PBOBBLE3, /* E29 */ 32 | ARKRETRN, /* E36 */ 33 | KIRAMEKI, /* E44 */ 34 | PUCHICAR, /* E46 */ 35 | PBOBBLE4, /* E49 */ 36 | POPNPOP, /* E51 */ 37 | LANDMAKR /* E61 */ 38 | }; 39 | -------------------------------------------------------------------------------- /src/cpu/i86/instr186.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * real mode i286 emulator v1.4 by Fabrice Frances * 3 | * (initial work based on David Hedley's pcemu) * 4 | ****************************************************************************/ 5 | 6 | // file will be included in all cpu variants 7 | // timing value should move to separate array 8 | 9 | static void PREFIX186(_pusha)(void); 10 | static void PREFIX186(_popa)(void); 11 | static void PREFIX186(_bound)(void); 12 | static void PREFIX186(_push_d16)(void); 13 | static void PREFIX186(_imul_d16)(void); 14 | static void PREFIX186(_push_d8)(void); 15 | static void PREFIX186(_imul_d8)(void); 16 | static void PREFIX186(_rotshft_bd8)(void); 17 | static void PREFIX186(_rotshft_wd8)(void); 18 | static void PREFIX186(_enter)(void); 19 | static void PREFIX186(_leave)(void); 20 | static void PREFIX186(_insb)(void); 21 | static void PREFIX186(_insw)(void); 22 | static void PREFIX186(_outsb)(void); 23 | static void PREFIX186(_outsw)(void); 24 | 25 | /* changed instructions */ 26 | static void PREFIX186(_repne)(void); 27 | static void PREFIX186(_repe)(void); 28 | -------------------------------------------------------------------------------- /src/sound/tms5110.h: -------------------------------------------------------------------------------- 1 | #ifndef tms5110_h 2 | #define tms5110_h 3 | 4 | 5 | /* TMS5110 commands */ 6 | /* CTL8 CTL4 CTL2 CTL1 | PDC's */ 7 | /* (MSB) (LSB) | required */ 8 | #define TMS5110_CMD_RESET (0) /* 0 0 0 x | 1 */ 9 | #define TMS5110_CMD_LOAD_ADDRESS (2) /* 0 0 1 x | 2 */ 10 | #define TMS5110_CMD_OUTPUT (4) /* 0 1 0 x | 3 */ 11 | #define TMS5110_CMD_READ_BIT (8) /* 1 0 0 x | 1 */ 12 | #define TMS5110_CMD_SPEAK (10) /* 1 0 1 x | 1 */ 13 | #define TMS5110_CMD_READ_BRANCH (12) /* 1 1 0 x | 1 */ 14 | #define TMS5110_CMD_TEST_TALK (14) /* 1 1 1 x | 3 */ 15 | 16 | 17 | 18 | void tms5110_reset(void); 19 | void tms5110_set_M0_callback(int (*func)(void)); 20 | 21 | void tms5110_CTL_set(int data); 22 | void tms5110_PDC_set(int data); 23 | 24 | int tms5110_status_read(void); 25 | int tms5110_ready_read(void); 26 | 27 | void tms5110_process(INT16 *buffer, unsigned int size); 28 | 29 | #endif 30 | 31 | -------------------------------------------------------------------------------- /src/cpu/i86/i86intf.h: -------------------------------------------------------------------------------- 1 | /* ASG 971222 -- rewrote this interface */ 2 | #ifndef __I86INTRF_H_ 3 | #define __I86INTRF_H_ 4 | 5 | #include "memory.h" 6 | #include "osd_cpu.h" 7 | 8 | enum { 9 | I86_IP=1, I86_AX, I86_CX, I86_DX, I86_BX, I86_SP, I86_BP, I86_SI, I86_DI, 10 | I86_FLAGS, I86_ES, I86_CS, I86_SS, I86_DS, 11 | I86_VECTOR, I86_PENDING, I86_NMI_STATE, I86_IRQ_STATE 12 | }; 13 | 14 | /* Public variables */ 15 | extern int i86_ICount; 16 | 17 | /* Public functions */ 18 | 19 | extern void i86_init(void); 20 | extern void i86_reset(void *param); 21 | extern void i86_exit(void); 22 | extern int i86_execute(int cycles); 23 | extern unsigned i86_get_context(void *dst); 24 | extern void i86_set_context(void *src); 25 | extern unsigned i86_get_reg(int regnum); 26 | extern void i86_set_reg(int regnum, unsigned val); 27 | extern void i86_set_irq_line(int irqline, int state); 28 | extern void i86_set_irq_callback(int (*callback)(int irqline)); 29 | extern unsigned i86_dasm(char *buffer, unsigned pc); 30 | extern const char *i86_info(void *context, int regnum); 31 | 32 | #ifdef MAME_DEBUG 33 | extern unsigned DasmI86(char* buffer, unsigned pc); 34 | #endif 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /src/vidhrdw/truco_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | vidhrdw.c 4 | 5 | Functions to emulate the video hardware of the machine. 6 | 7 | ***************************************************************************/ 8 | 9 | #include "driver.h" 10 | 11 | PALETTE_INIT( truco ) 12 | { 13 | int i; 14 | 15 | for (i = 0;i < Machine->drv->total_colors;i++) 16 | { 17 | int r = ( i & 0x8 ) ? 0xff : 0x00; 18 | int g = ( i & 0x4 ) ? 0xff : 0x00; 19 | int b = ( i & 0x2 ) ? 0xff : 0x00; 20 | 21 | int dim = ( i & 0x1 ); 22 | 23 | if ( dim ) { 24 | r >>= 1; 25 | g >>= 1; 26 | b >>= 1; 27 | } 28 | 29 | palette_set_color(i,r,g,b); 30 | } 31 | } 32 | 33 | VIDEO_UPDATE( truco ) 34 | { 35 | data8_t *vid = memory_region( REGION_CPU1 ) + 0x1800; 36 | int x, y; 37 | 38 | for( y = 0; y < 192; y++ ) { 39 | for( x = 0; x < 256; x++ ) { 40 | int pixel; 41 | 42 | if ( x & 1 ) { 43 | pixel = vid[x>>1] & 0x0f; 44 | } else { 45 | pixel = ( vid[x>>1] >> 4 ) & 0x0f; 46 | } 47 | 48 | plot_pixel(bitmap,x,y,Machine->pens[pixel]); 49 | } 50 | 51 | vid += 0x80; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /src/sndhrdw/bosco_sndhrdw.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | 3 | /* macro to convert 4-bit unsigned samples to 8-bit signed samples */ 4 | #define SAMPLE_CONV4(a) (0x11*((a&0x0f))-0x80) 5 | 6 | 7 | static signed char *speech; /* 24k for speech */ 8 | static int channel; 9 | 10 | 11 | 12 | int bosco_sh_start(const struct MachineSound *msound) 13 | { 14 | int i; 15 | unsigned char bits; 16 | 17 | channel = mixer_allocate_channel(25); 18 | mixer_set_name(channel,"Samples"); 19 | 20 | speech = auto_malloc(2*memory_region_length(REGION_SOUND2)); 21 | if (!speech) 22 | return 1; 23 | 24 | /* decode the rom samples */ 25 | for (i = 0;i < memory_region_length(REGION_SOUND2);i++) 26 | { 27 | bits = memory_region(REGION_SOUND2)[i] & 0x0f; 28 | speech[2*i] = SAMPLE_CONV4(bits); 29 | 30 | bits = (memory_region(REGION_SOUND2)[i] & 0xf0) >> 4; 31 | speech[2*i + 1] = SAMPLE_CONV4(bits); 32 | } 33 | 34 | return 0; 35 | } 36 | 37 | 38 | void bosco_sh_stop (void) 39 | { 40 | } 41 | 42 | 43 | void bosco_sample_play(int offset, int length) 44 | { 45 | if (Machine->sample_rate == 0) 46 | return; 47 | 48 | mixer_play_sample(channel,speech + offset,length,4000,0,1); 49 | } 50 | -------------------------------------------------------------------------------- /src/sound/tms36xx.h: -------------------------------------------------------------------------------- 1 | #ifndef TMS36XX_SOUND_H 2 | #define TMS36XX_SOUND_H 3 | 4 | #define MAX_TMS36XX 4 5 | 6 | /* subtypes */ 7 | #define MM6221AA 21 /* Phoenix (fixed melodies) */ 8 | #define TMS3615 15 /* Naughty Boy, Pleiads (13 notes, one output) */ 9 | #define TMS3617 17 /* Monster Bash (13 notes, six outputs) */ 10 | 11 | /* The interface structure */ 12 | struct TMS36XXinterface { 13 | int num; 14 | int mixing_level[MAX_TMS36XX]; 15 | int subtype[MAX_TMS36XX]; 16 | int basefreq[MAX_TMS36XX]; /* base frequecnies of the chips */ 17 | double decay[MAX_TMS36XX][6]; /* decay times for the six harmonic notes */ 18 | double speed[MAX_TMS36XX]; /* tune speed (meaningful for the TMS3615 only) */ 19 | }; 20 | 21 | extern int tms36xx_sh_start(const struct MachineSound *msound); 22 | extern void tms36xx_sh_stop(void); 23 | extern void tms36xx_sh_update(void); 24 | 25 | /* MM6221AA interface functions */ 26 | extern void mm6221aa_tune_w(int chip, int tune); 27 | 28 | /* TMS3615/17 interface functions */ 29 | extern void tms36xx_note_w(int chip, int octave, int note); 30 | 31 | /* TMS3617 interface functions */ 32 | extern void tms3617_enable_w(int chip, int enable); 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /src/sound/hc55516.h: -------------------------------------------------------------------------------- 1 | #ifndef HC55516_H 2 | #define HC55516_H 3 | 4 | #define MAX_HC55516 4 5 | 6 | struct hc55516_interface 7 | { 8 | int num; 9 | int volume[MAX_HC55516]; 10 | }; 11 | 12 | int hc55516_sh_start(const struct MachineSound *msound); 13 | 14 | /* sets the databit (0 or 1) */ 15 | void hc55516_digit_w(int num, int data); 16 | 17 | /* sets the clock state (0 or 1, clocked on the rising edge) */ 18 | void hc55516_clock_w(int num, int state); 19 | 20 | /* clears or sets the clock state */ 21 | void hc55516_clock_clear_w(int num, int data); 22 | void hc55516_clock_set_w(int num, int data); 23 | 24 | /* clears the clock state and sets the databit */ 25 | void hc55516_digit_clock_clear_w(int num, int data); 26 | 27 | WRITE_HANDLER( hc55516_0_digit_w ); 28 | WRITE_HANDLER( hc55516_0_clock_w ); 29 | WRITE_HANDLER( hc55516_0_clock_clear_w ); 30 | WRITE_HANDLER( hc55516_0_clock_set_w ); 31 | WRITE_HANDLER( hc55516_0_digit_clock_clear_w ); 32 | 33 | WRITE_HANDLER( hc55516_1_digit_w ); 34 | WRITE_HANDLER( hc55516_1_clock_w ); 35 | WRITE_HANDLER( hc55516_1_clock_clear_w ); 36 | WRITE_HANDLER( hc55516_1_clock_set_w ); 37 | WRITE_HANDLER( hc55516_1_digit_clock_clear_w ); 38 | 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /src/harddisk.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Generic MAME hard disk implementation, with differencing files 4 | 5 | ***************************************************************************/ 6 | 7 | #ifndef HARDDISK_H 8 | #define HARDDISK_H 9 | 10 | #include "driver.h" 11 | #include "chd.h" 12 | 13 | 14 | struct hard_disk_file; 15 | 16 | struct hard_disk_info 17 | { 18 | UINT32 cylinders; 19 | UINT32 heads; 20 | UINT32 sectors; 21 | UINT32 sectorbytes; 22 | }; 23 | 24 | 25 | 26 | /************************************* 27 | * 28 | * Prototypes 29 | * 30 | *************************************/ 31 | 32 | struct hard_disk_file *hard_disk_open(struct chd_file *chd); 33 | void hard_disk_close(struct hard_disk_file *file); 34 | 35 | struct chd_file *hard_disk_get_chd(struct hard_disk_file *file); 36 | struct hard_disk_info *hard_disk_get_info(struct hard_disk_file *file); 37 | 38 | UINT32 hard_disk_read(struct hard_disk_file *file, UINT32 lbasector, UINT32 numsectors, void *buffer); 39 | UINT32 hard_disk_write(struct hard_disk_file *file, UINT32 lbasector, UINT32 numsectors, const void *buffer); 40 | 41 | #endif /* HARDDISK_H */ 42 | -------------------------------------------------------------------------------- /src/sound/ym2413.h: -------------------------------------------------------------------------------- 1 | #ifndef _H_YM2413_ 2 | #define _H_YM2413_ 3 | 4 | /* select output bits size of output : 8 or 16 */ 5 | #define SAMPLE_BITS 16 6 | 7 | /* compiler dependence */ 8 | #ifndef OSD_CPU_H 9 | #define OSD_CPU_H 10 | typedef unsigned char UINT8; /* unsigned 8bit */ 11 | typedef unsigned short UINT16; /* unsigned 16bit */ 12 | typedef unsigned int UINT32; /* unsigned 32bit */ 13 | typedef signed char INT8; /* signed 8bit */ 14 | typedef signed short INT16; /* signed 16bit */ 15 | typedef signed int INT32; /* signed 32bit */ 16 | #endif 17 | 18 | #if (SAMPLE_BITS==16) 19 | typedef INT16 SAMP; 20 | #endif 21 | #if (SAMPLE_BITS==8) 22 | typedef INT8 SAMP; 23 | #endif 24 | 25 | 26 | 27 | 28 | int YM2413Init(int num, int clock, int rate); 29 | void YM2413Shutdown(void); 30 | void YM2413ResetChip(int which); 31 | void YM2413Write(int which, int a, int v); 32 | unsigned char YM2413Read(int which, int a); 33 | void YM2413UpdateOne(int which, INT16 **buffers, int length); 34 | 35 | typedef void (*OPLL_UPDATEHANDLER)(int param,int min_interval_us); 36 | 37 | void YM2413SetUpdateHandler(int which, OPLL_UPDATEHANDLER UpdateHandler, int param); 38 | 39 | 40 | #endif /*_H_YM2413_*/ 41 | -------------------------------------------------------------------------------- /src/memdbg.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file memdbg.h 3 | */ 4 | #ifndef MEMDBG_H 5 | #define MEMDBG_H 6 | 7 | #include 8 | #include 9 | 10 | /* protypes for MALLOC, FREE macros. 11 | * 12 | * code using memdbg.c for tracing should always use MALLOC, FREE instead of direct calls 13 | * to malloc, free. 14 | */ 15 | void *MALLOC( size_t lSize ); 16 | void FREE( void *pMem ); 17 | 18 | /** 19 | * dumps a list of all current allocations, with module, line number, and allocation size 20 | */ 21 | extern void memdbg_Debug( void ); 22 | 23 | #if defined(USE_MEMDBG) 24 | /* memory tracking is enabled; reroute the MALLOC, FREE macros to the appropriate functions 25 | * in memdbg.c 26 | */ 27 | extern void *memdbg_Alloc( size_t lSize, const char *pFile, int line ); 28 | extern void memdbg_Free( void *pMem ); 29 | #define MALLOC( _SIZE ) memdbg_Alloc( (_SIZE) ,__FILE__, __LINE__) 30 | #define FREE( _PTR ) memdbg_Free( (_PTR) ) 31 | #else 32 | /* memory tracking is not enabled; just route MALLOC, FREE macros directly to the core 33 | * malloc, free routines. 34 | */ 35 | #define MALLOC( _SIZE ) malloc( (_SIZE) ) 36 | #define FREE( _PTR ) free( (_PTR) ) 37 | #endif /* defined(MEMDBG) */ 38 | 39 | #endif /* MEMDBG_H */ 40 | -------------------------------------------------------------------------------- /src/includes/namcos3d.h: -------------------------------------------------------------------------------- 1 | #include "driver.h" /* for mame_bitmap */ 2 | 3 | #define NAMCOS22_SCREEN_WIDTH 640 4 | #define NAMCOS22_SCREEN_HEIGHT 480 5 | 6 | extern INT32 *namco_zbuffer; 7 | 8 | struct VerTex 9 | { 10 | double x,y,z; 11 | double u,v,i; 12 | }; 13 | 14 | typedef struct 15 | { 16 | struct rectangle clip; 17 | double zoom, cx, cy; 18 | double x,y,z; /* unit vector for light direction */ 19 | double ambient; /* 0.0..1.0 */ 20 | double power; /* 0.0..1.0 */ 21 | } namcos22_camera; 22 | 23 | struct RotParam 24 | { 25 | double thx_sin, thx_cos; 26 | double thy_sin, thy_cos; 27 | double thz_sin, thz_cos; 28 | int rolt; /* rotation type: 0,1,2,3,4,5 */ 29 | }; 30 | 31 | void namcos3d_Rotate( double M[4][4], const struct RotParam *pParam ); 32 | 33 | int namcos3d_Init( int width, int height, void *pTilemapROM, void *pTextureROM ); 34 | 35 | void namcos3d_Start( struct mame_bitmap *pBitmap ); 36 | 37 | void namcos22_BlitTri( 38 | struct mame_bitmap *pBitmap, 39 | const struct VerTex v[3], 40 | unsigned color, 41 | INT32 bias, 42 | INT32 flags, 43 | const namcos22_camera * ); 44 | 45 | void /*namcos21_*/BlitTriFlat( 46 | struct mame_bitmap *pBitmap, 47 | const struct VerTex v[3], 48 | unsigned color ); 49 | -------------------------------------------------------------------------------- /src/includes/itech8.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Incredible Technologies/Strata system 4 | (8-bit blitter variant) 5 | 6 | **************************************************************************/ 7 | 8 | /*----------- defined in drivers/itech8.c -----------*/ 9 | 10 | void itech8_update_interrupts(int periodic, int tms34061, int blitter); 11 | 12 | 13 | /*----------- defined in machine/slikshot.c -----------*/ 14 | 15 | READ_HANDLER( slikz80_port_r ); 16 | WRITE_HANDLER( slikz80_port_w ); 17 | 18 | READ_HANDLER( slikshot_z80_r ); 19 | READ_HANDLER( slikshot_z80_control_r ); 20 | WRITE_HANDLER( slikshot_z80_control_w ); 21 | 22 | void slikshot_extra_draw(struct mame_bitmap *bitmap, const struct rectangle *cliprect); 23 | 24 | 25 | /*----------- defined in vidhrdw/itech8.c -----------*/ 26 | 27 | extern UINT8 *itech8_grom_bank; 28 | extern UINT8 *itech8_display_page; 29 | 30 | VIDEO_START( itech8 ); 31 | VIDEO_START( slikshot ); 32 | 33 | WRITE_HANDLER( itech8_palette_w ); 34 | 35 | READ_HANDLER( itech8_blitter_r ); 36 | WRITE_HANDLER( itech8_blitter_w ); 37 | 38 | WRITE_HANDLER( itech8_tms34061_w ); 39 | READ_HANDLER( itech8_tms34061_r ); 40 | 41 | VIDEO_UPDATE( itech8 ); 42 | -------------------------------------------------------------------------------- /src/vidhrdw/segaic24.h: -------------------------------------------------------------------------------- 1 | #ifndef __SEGAIC_H 2 | #define __SEGAIC_H 3 | 4 | /* system24temp_ functions / variables are from shared rewrite files, 5 | once the rest of the rewrite is complete they can be removed, I 6 | just made a copy & renamed them for now to avoid any conflicts 7 | */ 8 | 9 | //#include "vmixer.h" 10 | 11 | WRITE16_HANDLER (system24temp_sys16_paletteram1_w); 12 | 13 | // Tilemaps 14 | // System24 15 | int sys24_tile_vh_start(UINT16 tile_mask); 16 | void sys24_tile_update(void); 17 | void sys24_tile_draw(struct mame_bitmap *bitmap, const struct rectangle *cliprect, int layer, int pri, int flags); 18 | 19 | READ16_HANDLER(sys24_tile_r); 20 | READ16_HANDLER(sys24_char_r); 21 | WRITE16_HANDLER(sys24_tile_w); 22 | WRITE16_HANDLER(sys24_char_w); 23 | 24 | // Sprites 25 | // System24 26 | int sys24_sprite_vh_start(void); 27 | void sys24_sprite_draw(struct mame_bitmap *bitmap, const struct rectangle *cliprect, const int *spri); 28 | 29 | WRITE16_HANDLER (sys24_sprite_w); 30 | READ16_HANDLER (sys24_sprite_r); 31 | 32 | // Programmable mixers 33 | // System24 34 | int sys24_mixer_vh_start(void); 35 | int sys24_mixer_get_reg(int reg); 36 | 37 | WRITE16_HANDLER (sys24_mixer_w); 38 | READ16_HANDLER (sys24_mixer_r); 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /src/machine/segaic16.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Sega 16-bit common hardware 4 | 5 | ***************************************************************************/ 6 | 7 | //void (*sound_w_callback)(data8_t), data8_t (*sound_r_callback)(void)); 8 | /* multiply chip */ 9 | READ16_HANDLER( segaic16_multiply_0_r ); 10 | READ16_HANDLER( segaic16_multiply_1_r ); 11 | READ16_HANDLER( segaic16_multiply_2_r ); 12 | WRITE16_HANDLER( segaic16_multiply_0_w ); 13 | WRITE16_HANDLER( segaic16_multiply_1_w ); 14 | WRITE16_HANDLER( segaic16_multiply_2_w ); 15 | 16 | /* divide chip */ 17 | READ16_HANDLER( segaic16_divide_0_r ); 18 | READ16_HANDLER( segaic16_divide_1_r ); 19 | READ16_HANDLER( segaic16_divide_2_r ); 20 | WRITE16_HANDLER( segaic16_divide_0_w ); 21 | WRITE16_HANDLER( segaic16_divide_1_w ); 22 | WRITE16_HANDLER( segaic16_divide_2_w ); 23 | 24 | /* compare/timer chip */ 25 | void segaic16_compare_timer_init(int which, void (*sound_write_callback)(data8_t), void (*timer_ack_callback)(void)); 26 | int segaic16_compare_timer_clock(int which); 27 | READ16_HANDLER( segaic16_compare_timer_0_r ); 28 | READ16_HANDLER( segaic16_compare_timer_1_r ); 29 | WRITE16_HANDLER( segaic16_compare_timer_0_w ); 30 | WRITE16_HANDLER( segaic16_compare_timer_1_w ); 31 | 32 | -------------------------------------------------------------------------------- /src/includes/firetrk.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Fire Truck + Super Bug + Monte Carlo driver 4 | 5 | *************************************************************************/ 6 | 7 | #define GAME_IS_FIRETRUCK (firetrk_game == 1) 8 | #define GAME_IS_SUPERBUG (firetrk_game == 2) 9 | #define GAME_IS_MONTECARLO (firetrk_game == 3) 10 | 11 | /*----------- defined in drivers/firetrk.c -----------*/ 12 | 13 | extern int firetrk_game; 14 | 15 | /*----------- defined in vidhrdw/firetrk.c -----------*/ 16 | 17 | extern VIDEO_UPDATE( firetrk ); 18 | extern VIDEO_START( firetrk ); 19 | extern VIDEO_EOF( firetrk ); 20 | 21 | extern WRITE_HANDLER( firetrk_vert_w ); 22 | extern WRITE_HANDLER( firetrk_horz_w ); 23 | extern WRITE_HANDLER( firetrk_drone_hpos_w ); 24 | extern WRITE_HANDLER( firetrk_drone_vpos_w ); 25 | extern WRITE_HANDLER( firetrk_drone_rot_w ); 26 | extern WRITE_HANDLER( firetrk_playfield_w ); 27 | extern WRITE_HANDLER( firetrk_car_rot_w ); 28 | 29 | extern void firetrk_set_flash(int flag); 30 | extern void firetrk_set_blink(int flag); 31 | 32 | extern UINT8* firetrk_alpha_num_ram; 33 | extern UINT8* firetrk_playfield_ram; 34 | 35 | extern int firetrk_crash[2]; 36 | extern int firetrk_skid[2]; 37 | -------------------------------------------------------------------------------- /src/vidhrdw/diverboy_vidhrdw.c: -------------------------------------------------------------------------------- 1 | /* Diver Boy - Video Hardware */ 2 | 3 | #include "driver.h" 4 | 5 | data16_t *diverboy_spriteram; 6 | size_t diverboy_spriteram_size; 7 | 8 | 9 | VIDEO_START(diverboy) 10 | { 11 | return 0; 12 | } 13 | 14 | static void diverboy_drawsprites( struct mame_bitmap *bitmap, const struct rectangle *cliprect ) 15 | { 16 | data16_t *source = diverboy_spriteram; 17 | data16_t *finish = source + diverboy_spriteram_size/2; 18 | 19 | while (source < finish) 20 | { 21 | int xpos,ypos,number,colr,bank,flash; 22 | 23 | ypos = source[4]; 24 | xpos = source[0]; 25 | colr = (source[1]& 0x00f0) >> 4; 26 | number = source[3]; 27 | flash = source[1] & 0x1000; 28 | 29 | colr |= ((source[1] & 0x000c) << 2); 30 | 31 | ypos = 0x100 - ypos; 32 | 33 | bank = (source[1]&0x0002) >> 1; 34 | 35 | if (!flash || (cpu_getcurrentframe() & 1)) 36 | { 37 | drawgfx(bitmap,Machine->gfx[bank], 38 | number, 39 | colr, 40 | 0,0, 41 | xpos,ypos, 42 | cliprect,(source[1] & 0x0008) ? TRANSPARENCY_NONE : TRANSPARENCY_PEN,0); 43 | } 44 | 45 | source+=8; 46 | } 47 | } 48 | 49 | VIDEO_UPDATE(diverboy) 50 | { 51 | // fillbitmap(bitmap,get_black_pen(),cliprect); 52 | diverboy_drawsprites(bitmap,cliprect); 53 | } 54 | -------------------------------------------------------------------------------- /src/includes/namcos22.h: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | #include "vidhrdw/generic.h" 3 | 4 | extern enum namcos22_gametype 5 | { 6 | NAMCOS22_AIR_COMBAT22, 7 | NAMCOS22_ALPINE_RACER, 8 | NAMCOS22_CYBER_COMMANDO, 9 | NAMCOS22_CYBER_CYCLES, 10 | NAMCOS22_PROP_CYCLE, 11 | NAMCOS22_RAVE_RACER, 12 | NAMCOS22_RIDGE_RACER, 13 | NAMCOS22_TIME_CRISIS, 14 | NAMCOS22_VICTORY_LAP, 15 | NAMCOS22_ACE_DRIVER 16 | } namcos22_gametype; 17 | 18 | #define NAMCOS22_NUM_ROWS 30 19 | #define NAMCOS22_NUM_COLS 40 20 | #define NAMCOS22_ALPHA_GFX 1 21 | 22 | #define NAMCOS22_PALETTE_SIZE 0x8000 23 | 24 | extern data32_t *namcos22_cgram; 25 | extern data32_t *namcos22_textram; 26 | extern data32_t *namcos22_polygonram; 27 | extern data32_t *namcos22_gamma; 28 | 29 | READ32_HANDLER( namcos22_cgram_r ); 30 | WRITE32_HANDLER( namcos22_cgram_w ); 31 | 32 | READ32_HANDLER( namcos22_paletteram_r ); 33 | WRITE32_HANDLER( namcos22_paletteram_w ); 34 | 35 | READ32_HANDLER( namcos22_textram_r ); 36 | WRITE32_HANDLER( namcos22_textram_w ); 37 | 38 | READ32_HANDLER( namcos22_gamma_r ); 39 | WRITE32_HANDLER( namcos22_gamma_w ); 40 | 41 | READ32_HANDLER( namcos22_dspram_r ); 42 | WRITE32_HANDLER( namcos22_dspram_w ); 43 | 44 | VIDEO_UPDATE( namcos22 ); 45 | 46 | VIDEO_START( namcos22s ); 47 | VIDEO_UPDATE( namcos22s ); 48 | -------------------------------------------------------------------------------- /src/includes/mhavoc.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Atari Major Havoc hardware 4 | 5 | *************************************************************************/ 6 | 7 | #define MHAVOC_CLOCK 10000000 8 | #define MHAVOC_CLOCK_5M (MHAVOC_CLOCK/2) 9 | #define MHAVOC_CLOCK_2_5M (MHAVOC_CLOCK/4) 10 | #define MHAVOC_CLOCK_1_25M (MHAVOC_CLOCK/8) 11 | #define MHAVOC_CLOCK_625K (MHAVOC_CLOCK/16) 12 | 13 | #define MHAVOC_CLOCK_156K (MHAVOC_CLOCK_625K/4) 14 | #define MHAVOC_CLOCK_5K (MHAVOC_CLOCK_625K/16/8) 15 | #define MHAVOC_CLOCK_2_4K (MHAVOC_CLOCK_625K/16/16) 16 | 17 | 18 | /*----------- defined in machine/mhavoc.c -----------*/ 19 | 20 | WRITE_HANDLER( mhavoc_alpha_irq_ack_w ); 21 | WRITE_HANDLER( mhavoc_gamma_irq_ack_w ); 22 | 23 | MACHINE_INIT( mhavoc ); 24 | 25 | WRITE_HANDLER( mhavoc_gamma_w ); 26 | READ_HANDLER( mhavoc_alpha_r ); 27 | 28 | WRITE_HANDLER( mhavoc_alpha_w ); 29 | READ_HANDLER( mhavoc_gamma_r ); 30 | 31 | WRITE_HANDLER( mhavoc_ram_banksel_w ); 32 | WRITE_HANDLER( mhavoc_rom_banksel_w ); 33 | 34 | READ_HANDLER( mhavoc_port_0_r ); 35 | READ_HANDLER( alphaone_port_0_r ); 36 | READ_HANDLER( mhavoc_port_1_r ); 37 | 38 | WRITE_HANDLER( mhavoc_out_0_w ); 39 | WRITE_HANDLER( alphaone_out_0_w ); 40 | WRITE_HANDLER( mhavoc_out_1_w ); 41 | -------------------------------------------------------------------------------- /src/sndhrdw/mario_sndhrdw.c: -------------------------------------------------------------------------------- 1 | #include "driver.h" 2 | #include "cpu/i8039/i8039.h" 3 | 4 | 5 | 6 | WRITE_HANDLER( mario_sh_w ) 7 | { 8 | if (data) 9 | cpu_set_irq_line(1,0,ASSERT_LINE); 10 | else 11 | cpu_set_irq_line(1,0,CLEAR_LINE); 12 | } 13 | 14 | 15 | /* Mario running sample */ 16 | WRITE_HANDLER( mario_sh1_w ) 17 | { 18 | static int last; 19 | 20 | if (last!= data) 21 | { 22 | last = data; 23 | if (data && sample_playing(0) == 0) sample_start (0, 3, 0); 24 | } 25 | } 26 | 27 | /* Luigi running sample */ 28 | WRITE_HANDLER( mario_sh2_w ) 29 | { 30 | static int last; 31 | 32 | if (last!= data) 33 | { 34 | last = data; 35 | if (data && sample_playing(1) == 0) sample_start (1, 4, 0); 36 | } 37 | } 38 | 39 | /* Misc samples */ 40 | WRITE_HANDLER( mario_sh3_w ) 41 | { 42 | static int state[8]; 43 | 44 | /* Don't trigger the sample if it's still playing */ 45 | if (state[offset] == data) return; 46 | 47 | state[offset] = data; 48 | if (data) 49 | { 50 | switch (offset) 51 | { 52 | case 2: /* ice */ 53 | sample_start (2, 0, 0); 54 | break; 55 | case 6: /* coin */ 56 | sample_start (2, 1, 0); 57 | break; 58 | case 7: /* skid */ 59 | sample_start (2, 2, 0); 60 | break; 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /src/cpu/m68000_cyclone/c68000.h: -------------------------------------------------------------------------------- 1 | #ifndef C68000_H 2 | #define C68000_H 3 | #include "cyclone.h" 4 | 5 | typedef struct 6 | { 7 | struct Cyclone regs; 8 | int pending_interrupts; 9 | int (*MAMEIrqCallback)(int int_level); 10 | } Cyclone_Regs; 11 | 12 | extern Cyclone_Regs cyclone; 13 | 14 | #define cyclone_ICount cyclone.regs.cycles 15 | 16 | #define cyclone_INT_NONE 0 17 | #define cyclone_IRQ_1 1 18 | #define cyclone_IRQ_2 2 19 | #define cyclone_IRQ_3 3 20 | #define cyclone_IRQ_4 4 21 | #define cyclone_IRQ_5 5 22 | #define cyclone_IRQ_6 6 23 | #define cyclone_IRQ_7 7 24 | #define cyclone_INT_ACK_AUTOVECTOR -1 25 | #define cyclone_STOP 0x10 26 | 27 | extern void cyclone_init(void); 28 | extern void cyclone_reset(void *param); 29 | extern void cyclone_exit(void); 30 | extern int cyclone_execute(int cycles); 31 | extern unsigned cyclone_get_context(void *dst); 32 | extern void cyclone_set_context(void *src); 33 | extern unsigned cyclone_get_reg(int regnum); 34 | extern void cyclone_set_reg(int regnum, unsigned val); 35 | extern void cyclone_set_irq_line(int irqline, int state); 36 | extern void cyclone_set_irq_callback(int (*callback)(int irqline)); 37 | extern const char *cyclone_info(void *context, int regnum); 38 | extern unsigned cyclone_dasm(char *buffer, unsigned pc); 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /src/includes/sega.h: -------------------------------------------------------------------------------- 1 | /************************************************************************* 2 | 3 | Sega vector hardware 4 | 5 | *************************************************************************/ 6 | 7 | /*----------- defined in machine/sega.c -----------*/ 8 | 9 | extern UINT8 *sega_mem; 10 | extern void sega_security(int chip); 11 | 12 | WRITE_HANDLER( sega_w ); 13 | 14 | INTERRUPT_GEN( sega_interrupt ); 15 | 16 | READ_HANDLER( sega_mult_r ); 17 | WRITE_HANDLER( sega_mult1_w ); 18 | WRITE_HANDLER( sega_mult2_w ); 19 | WRITE_HANDLER( sega_switch_w ); 20 | WRITE_HANDLER( sega_coin_counter_w ); 21 | 22 | READ_HANDLER( sega_ports_r ); 23 | READ_HANDLER( sega_IN4_r ); 24 | READ_HANDLER( elim4_IN4_r ); 25 | 26 | 27 | /*----------- defined in sndhrdw/sega.c -----------*/ 28 | 29 | WRITE_HANDLER( elim1_sh_w ); 30 | WRITE_HANDLER( elim2_sh_w ); 31 | WRITE_HANDLER( spacfury1_sh_w ); 32 | WRITE_HANDLER( spacfury2_sh_w ); 33 | WRITE_HANDLER( zektor1_sh_w ); 34 | WRITE_HANDLER( zektor2_sh_w ); 35 | 36 | int tacscan_sh_start(const struct MachineSound *msound); 37 | void tacscan_sh_update(void); 38 | 39 | WRITE_HANDLER( tacscan_sh_w ); 40 | WRITE_HANDLER( startrek_sh_w ); 41 | 42 | 43 | /*----------- defined in vidhrdw/sega.c -----------*/ 44 | 45 | VIDEO_START( sega ); 46 | VIDEO_UPDATE( sega ); 47 | -------------------------------------------------------------------------------- /src/machine/mcr.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | mcr.c 4 | 5 | Functions to emulate general aspects of the machine (RAM, ROM, interrupts, 6 | I/O ports) 7 | 8 | Tapper machine started by Chris Kirmse 9 | 10 | ***************************************************************************/ 11 | 12 | #include "machine/6821pia.h" 13 | 14 | 15 | extern INT16 spyhunt_scrollx, spyhunt_scrolly; 16 | extern double mcr68_timing_factor; 17 | 18 | 19 | 20 | /************ Generic MCR routines ***************/ 21 | 22 | extern Z80_DaisyChain mcr_daisy_chain[]; 23 | extern UINT8 mcr_cocktail_flip; 24 | 25 | MACHINE_INIT( mcr ); 26 | MACHINE_INIT( mcr68 ); 27 | MACHINE_INIT( zwackery ); 28 | 29 | INTERRUPT_GEN( mcr_interrupt ); 30 | INTERRUPT_GEN( mcr68_interrupt ); 31 | 32 | WRITE_HANDLER( mcr_control_port_w ); 33 | WRITE_HANDLER( mcrmono_control_port_w ); 34 | WRITE_HANDLER( mcr_scroll_value_w ); 35 | 36 | WRITE16_HANDLER( mcr68_6840_upper_w ); 37 | WRITE16_HANDLER( mcr68_6840_lower_w ); 38 | READ16_HANDLER( mcr68_6840_upper_r ); 39 | READ16_HANDLER( mcr68_6840_lower_r ); 40 | 41 | 42 | 43 | /************ Generic character and sprite definition ***************/ 44 | 45 | extern struct GfxLayout mcr_bg_layout; 46 | extern struct GfxLayout mcr_sprite_layout; 47 | -------------------------------------------------------------------------------- /src/sound/upd7759.h: -------------------------------------------------------------------------------- 1 | #ifndef UPD7759S_H 2 | #define UPD7759S_H 3 | 4 | #define MAX_UPD7759 2 5 | 6 | /* There are two modes for the uPD7759, selected through the !MD pin. 7 | This is the mode select input. High is stand alone, low is slave. 8 | We're making the assumption that nobody switches modes through 9 | software. */ 10 | 11 | #define UPD7759_STANDALONE_MODE 1 12 | #define UPD7759_SLAVE_MODE 0 13 | 14 | struct UPD7759_interface 15 | { 16 | int num; /* num of upd chips */ 17 | int volume[MAX_UPD7759]; 18 | int region[MAX_UPD7759]; /* memory region from which the samples came */ 19 | int mode; /* standalone or slave mode */ 20 | void (*irqcallback[MAX_UPD7759])(int param); /* for slave mode only */ 21 | }; 22 | 23 | int UPD7759_sh_start (const struct MachineSound *msound); 24 | void UPD7759_sh_stop (void); 25 | 26 | void UPD7759_set_bank_base(int which, offs_t base); 27 | 28 | void UPD7759_reset_w (int num, UINT8 data); 29 | 30 | void UPD7759_w (int num, UINT8 data); 31 | void UPD7759_port_w (int num, UINT8 data); 32 | void UPD7759_start_w (int num, UINT8 data); 33 | int UPD7759_busy_r (int num); 34 | 35 | WRITE_HANDLER( UPD7759_0_reset_w ); 36 | WRITE_HANDLER( UPD7759_0_port_w ); 37 | WRITE_HANDLER( UPD7759_0_start_w ); 38 | READ_HANDLER( UPD7759_0_busy_r ); 39 | 40 | #endif 41 | 42 | -------------------------------------------------------------------------------- /src/sndhrdw/aztarac_sndhrdw.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Centuri Aztarac hardware 4 | 5 | ***************************************************************************/ 6 | 7 | #include "driver.h" 8 | #include "cpu/z80/z80.h" 9 | #include "aztarac.h" 10 | 11 | static int sound_status; 12 | 13 | READ16_HANDLER( aztarac_sound_r ) 14 | { 15 | if (Machine->sample_rate) 16 | return sound_status & 0x01; 17 | else 18 | return 1; 19 | } 20 | 21 | WRITE16_HANDLER( aztarac_sound_w ) 22 | { 23 | if (ACCESSING_LSB) 24 | { 25 | data &= 0xff; 26 | soundlatch_w(offset, data); 27 | sound_status ^= 0x21; 28 | if (sound_status & 0x20) 29 | cpu_set_irq_line(1, 0, HOLD_LINE); 30 | } 31 | } 32 | 33 | READ_HANDLER( aztarac_snd_command_r ) 34 | { 35 | sound_status |= 0x01; 36 | sound_status &= ~0x20; 37 | return soundlatch_r(offset); 38 | } 39 | 40 | READ_HANDLER( aztarac_snd_status_r ) 41 | { 42 | return sound_status & ~0x01; 43 | } 44 | 45 | WRITE_HANDLER( aztarac_snd_status_w ) 46 | { 47 | sound_status &= ~0x10; 48 | } 49 | 50 | INTERRUPT_GEN( aztarac_snd_timed_irq ) 51 | { 52 | sound_status ^= 0x10; 53 | 54 | if (sound_status & 0x10) 55 | cpu_set_irq_line(1,0,HOLD_LINE); 56 | } 57 | 58 | 59 | --------------------------------------------------------------------------------