mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2024-12-28 04:01:48 +01:00
62f1204476
Genesis Plus GX 1.6.0 ---------------------- [Core/Sound] --------------- * added YM2413 emulation in Master System compatibility mode. * fixed SN76489 noise boost initialization. * minor YM2612 core optimizations. [Core/VDP] --------------- * added accurate emulation of SG-1000, Master System (315-5124, 315-5246) & Game Gear VDP. * added support for all TMS9918 rendering modes. * improved Mega Drive VDP timings accuracy in Master System Compatibility mode. * fixed color palette initialization. * fixed shifted sprites rendering in Mode 4. * modified pixel rendering support (pixel depth is now forced at compilation time). [Core/CPU] --------------- * optimized 68k core (rewrote 68k interrupt handling, removed multiple CPU types support & unused code) for 5~8% speed improvment [Core/IO] --------------- * added accurate emulation of Master System (315-5216, 315-5237, 315-5297) & Game Gear I/O controllers. * added Terebi Oekaki tablet emulation. * improved Mouse emulation (fixes mouse support in Cannon Fodder). * improved Justifier emulation (fixes gun support in Lethal Enforcers 2). * improved 6-Buttons control pad emulation (fixes Duke Nukem 3D) * modified lightgun emulation to use common key inputs for all devices. * 2-buttons controller is now picked by default for Master System games. [Core/MD] --------------- * added copy-protection hardware emulation for some new dumped games (Tiny Toon Adventures 3, Mighty Morphin Power Rangers & The Battle of Red Cliffs). * added Game Toshokan in EEPROM database (verified on real cartridge). * fixed Micro Machines 2 - Turbo Tournament EEPROM size (verified on real cartridge). * modified SRAM banswitch hardware emulation to be more compatible with some hacks. [Core/MS] --------------- * added Cyborg Z to Korean mapper database. [Core/GG] --------------- * added 93C46 EEPROM emulation (Majors Pro Baseball, World Series Baseball & World Series Baseball 95). [Core/General] --------------- * added support for .mdx ROM format. * added Game Gear & SG-1000 ROM support. * added accurate emulation of SG-1000, Master System (I, II) & Game Gear hardware models for 100% compatibility. * updated to new Genesis Plus license (see http://cgfm2.emuviews.com/) * removed DOS port * various code cleanup. [Gamecube/Wii] --------------- * IMPORTANT: cheats, screenshots & save files are now stored in console-specific directories (ex: /snaps/md, /cheats/ms, /saves/gg, ...) * added 8-bit Action Replay & Game Genie codes support (for Master System & Game Gear games). * improved audio/video synchronization for PAL games in 50Hz TV modes (now use VSYNC like NTSC games in 60hz modes). * improved gun cursor positioning accuracy. * improved horizontal scaling & screenshots rendering in H32 mode. * fixed a bug with ROM file extension handling that would affect cheats, snapshots, sram & savestate files. * removed ARAM/injected ROM support (unused). * removed WPAD_ and PAD_ update from VSYNC callback. * increased GCC inlining limits for some speed improvment. * compiled with devkitPPC r24 & libogc 1.8.7.
134 lines
3.6 KiB
Makefile
134 lines
3.6 KiB
Makefile
|
|
# Makefile for genplus SDL
|
|
#
|
|
# (c) 1999, 2000, 2001, 2002, 2003 Charles MacDonald
|
|
# modified by Eke-Eke <eke_eke31@yahoo.fr>
|
|
#
|
|
# Defines :
|
|
# -DLSB_FIRST : for little endian systems.
|
|
# -DLOGERROR : enable message logging
|
|
# -DLOGVDP : enable VDP debug messages
|
|
# -DLOGSOUND : enable AUDIO debug messages
|
|
# -D8BPP_RENDERING - configure for 8-bit pixels (RGB332)
|
|
# -D15BPP_RENDERING - configure for 15-bit pixels (RGB555)
|
|
# -D16BPP_RENDERING - configure for 16-bit pixels (RGB565)
|
|
# -D32BPP_RENDERING - configure for 32-bit pixels (RGB888)
|
|
|
|
NAME = gen_sdl.exe
|
|
|
|
CC = gcc
|
|
CFLAGS = `sdl-config --cflags` -march=i686 -O6 -fomit-frame-pointer -Wall -Wno-strict-aliasing
|
|
#-g -ggdb -pg
|
|
#-fomit-frame-pointer
|
|
#LDFLAGS = -pg
|
|
DEFINES = -DLSB_FIRST -DUSE_16BPP_RENDERING
|
|
|
|
INCLUDES = -Isource -Isource/z80 -Isource/m68k -Isource/sound -Isource/input_hw -Isource/cart_hw -Isource/cart_hw/svp -Isource/ntsc -Isource/win
|
|
LIBS = `sdl-config --libs` -lz -lm
|
|
|
|
OBJDIR = ./build_sdl
|
|
|
|
OBJECTS = $(OBJDIR)/z80.o
|
|
|
|
OBJECTS += $(OBJDIR)/m68kcpu.o
|
|
|
|
OBJECTS += $(OBJDIR)/genesis.o \
|
|
$(OBJDIR)/vdp_ctrl.o \
|
|
$(OBJDIR)/vdp_render.o \
|
|
$(OBJDIR)/system.o \
|
|
$(OBJDIR)/io_ctrl.o \
|
|
$(OBJDIR)/mem68k.o \
|
|
$(OBJDIR)/memz80.o \
|
|
$(OBJDIR)/membnk.o \
|
|
$(OBJDIR)/state.o \
|
|
$(OBJDIR)/loadrom.o
|
|
|
|
OBJECTS += $(OBJDIR)/input.o \
|
|
$(OBJDIR)/gamepad.o \
|
|
$(OBJDIR)/lightgun.o \
|
|
$(OBJDIR)/mouse.o \
|
|
$(OBJDIR)/activator.o \
|
|
$(OBJDIR)/xe_a1p.o \
|
|
$(OBJDIR)/teamplayer.o \
|
|
$(OBJDIR)/paddle.o \
|
|
$(OBJDIR)/sportspad.o \
|
|
$(OBJDIR)/terebi_oekaki.o
|
|
|
|
OBJECTS += $(OBJDIR)/sound.o \
|
|
$(OBJDIR)/sn76489.o \
|
|
$(OBJDIR)/ym2413.o \
|
|
$(OBJDIR)/ym2612.o
|
|
|
|
OBJECTS += $(OBJDIR)/Fir_Resampler.o
|
|
OBJECTS += $(OBJDIR)/blip.o
|
|
OBJECTS += $(OBJDIR)/eq.o
|
|
|
|
OBJECTS += $(OBJDIR)/sram.o \
|
|
$(OBJDIR)/svp.o \
|
|
$(OBJDIR)/ssp16.o \
|
|
$(OBJDIR)/ggenie.o \
|
|
$(OBJDIR)/areplay.o \
|
|
$(OBJDIR)/gg_eeprom.o \
|
|
$(OBJDIR)/md_eeprom.o \
|
|
$(OBJDIR)/md_cart.o \
|
|
$(OBJDIR)/sms_cart.o
|
|
|
|
OBJECTS += $(OBJDIR)/sms_ntsc.o \
|
|
$(OBJDIR)/md_ntsc.o
|
|
|
|
OBJECTS += $(OBJDIR)/main.o \
|
|
$(OBJDIR)/config.o \
|
|
$(OBJDIR)/error.o \
|
|
$(OBJDIR)/unzip.o \
|
|
$(OBJDIR)/fileio.o
|
|
|
|
OBJECTS += $(OBJDIR)/icon.o
|
|
|
|
all: $(NAME)
|
|
|
|
$(NAME): $(OBJDIR) $(OBJECTS)
|
|
$(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@
|
|
|
|
$(OBJDIR) :
|
|
@[ -d $@ ] || mkdir -p $@
|
|
|
|
$(OBJDIR)/%.o : source/%.c source/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/sound/%.c source/sound/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/input_hw/%.c source/input_hw/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/cart_hw/%.c source/cart_hw/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/cart_hw/svp/%.c
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/cart_hw/svp/%.c source/cart_hw/svp/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/z80/%.c source/z80/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/m68k/%.c source/m68k/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/ntsc/%.c source/ntsc/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/%.o : source/win/%.c source/win/%.h
|
|
$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $< -o $@
|
|
|
|
$(OBJDIR)/icon.o :
|
|
windres source/win/icon.rc $@
|
|
|
|
pack :
|
|
strip $(NAME)
|
|
upx -9 $(NAME)
|
|
|
|
clean:
|
|
rm -f $(OBJECTS) $(NAME)
|