No Description

louyihua 764f0fed3b Try fix enemy magic sound & animation in battle 8 years ago
English.lproj f56380d1ef Initial commit. 11 years ago
Pal.xcodeproj 5209110704 Mac & ios project/icon file update 8 years ago
SDL2 7c086bed94 Refactor 5: UWP version is ready 8 years ago
adplug 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago
android 966a775da0 Android Makefile update 8 years ago
data cadc24ba3c moved overlay.bmp to data folder 9 years ago
dingux f194722fc4 Various changes 8 years ago
gph f194722fc4 Various changes 8 years ago
ios 145280df36 IOS & WinPhone with same util set. MP3 player can use enhanced instructions now. Better touch support if KeepAspectRatio is set. 8 years ago
libmad 45fef8a855 Fix two audio bugs 8 years ago
liboggvorbis 1539d48b16 Readme update & wp/arm compile fix 8 years ago
native_midi a7235db0d7 Added VS.net 2008 Project 11 years ago
psp f194722fc4 Various changes 8 years ago
unix 1d74726652 Audio system refactor 8 years ago
wii f194722fc4 Various changes 8 years ago
win32 c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
winrt 439e9253c3 Project file update for new sound play model 8 years ago
.gitignore 891255b290 [WIP] Refactor 4: Commit for windows store version & fix bugs in WP version 8 years ago
.travis.yml 27a58c1eab before_install 11 years ago
AUTHORS.txt 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago
Info.plist 8d4be3267d Initial check-in. 11 years ago
README.txt f194722fc4 Various changes 8 years ago
ascii.h 614e33d3c2 Bug fix: dead lock on exit, overlay on non-touch devices 8 years ago
audio.c c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
audio.h f3ae0012c5 New sound play model: Moving major processing steps (resample & convert) from main thread to audio thread 8 years ago
battle.c 1d74726652 Audio system refactor 8 years ago
battle.h d6035000dc SDL 1.2.15 compatibility 9 years ago
codepage.h 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago
common.h 284f100739 Some on/off switches can be specified from compilation command line 8 years ago
ending.c 1d74726652 Audio system refactor 8 years ago
ending.h fd9a91e7c6 Unified version 8 years ago
fight.c 764f0fed3b Try fix enemy magic sound & animation in battle 8 years ago
fight.h fd9a91e7c6 Unified version 8 years ago
font.c 614e33d3c2 Bug fix: dead lock on exit, overlay on non-touch devices 8 years ago
font.h 614e33d3c2 Bug fix: dead lock on exit, overlay on non-touch devices 8 years ago
fontglyph.h 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago
game.c 1d74726652 Audio system refactor 8 years ago
game.h d70187aec1 Emacs 11 years ago
global.c 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
global.h 764f0fed3b Try fix enemy magic sound & animation in battle 8 years ago
gpl.txt 8d4be3267d Initial check-in. 11 years ago
input.c 124361ef8a Eliminate MIDI calls when PAL_HAS_NATIVEMIDI is not defined 8 years ago
input.h 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
itemmenu.c cc1edf8f0d [WIP] Various change for refactor 8 years ago
itemmenu.h d70187aec1 Emacs 11 years ago
magicmenu.c cc1edf8f0d [WIP] Various change for refactor 8 years ago
magicmenu.h d6035000dc SDL 1.2.15 compatibility 9 years ago
main.c 1d74726652 Audio system refactor 8 years ago
main.h f3ae0012c5 New sound play model: Moving major processing steps (resample & convert) from main thread to audio thread 8 years ago
makemessage.py 174f929f43 [WIP] Refactor 2: new configuration model & WP8.1 enhancement 8 years ago
map.c e5ac3699f1 Change SWAPxx into SDL's built-in SDL_SwapLExx. 8 years ago
map.h d70187aec1 Emacs 11 years ago
midi.c 1d74726652 Audio system refactor 8 years ago
midi.h 124361ef8a Eliminate MIDI calls when PAL_HAS_NATIVEMIDI is not defined 8 years ago
mp3play.c c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
oggplay.c c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
overlay.c 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
palcfg.c 1d74726652 Audio system refactor 8 years ago
palcfg.h 1d74726652 Audio system refactor 8 years ago
palcommon.c 05c493e98b Move config function definitions to palcfg.c & slightly layout change of WinRT setting page 8 years ago
palcommon.h 284f100739 Some on/off switches can be specified from compilation command line 8 years ago
palette.c 5fa74edd95 SDL_GetTicks() ralted fix, avoiding possible bugs on extreme cases when SDL_GetTicks() wrapped, and remove some redundant codes on SDL 2.0 drawing. 8 years ago
palette.h d70187aec1 Emacs 11 years ago
play.c 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
play.h d70187aec1 Emacs 11 years ago
players.h c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
private.c d6035000dc SDL 1.2.15 compatibility 9 years ago
res.c d6035000dc SDL 1.2.15 compatibility 9 years ago
res.h d6035000dc SDL 1.2.15 compatibility 9 years ago
resampler.c f3ae0012c5 New sound play model: Moving major processing steps (resample & convert) from main thread to audio thread 8 years ago
resampler.h 2c3f1ef5d4 Fix rix play 8 years ago
rixplay.cpp c0f0d0230a Use SDL's LockAudio() & UnlockAudio() instead of customized mutex 8 years ago
rngplay.c 5fa74edd95 SDL_GetTicks() ralted fix, avoiding possible bugs on extreme cases when SDL_GetTicks() wrapped, and remove some redundant codes on SDL 2.0 drawing. 8 years ago
rngplay.h d70187aec1 Emacs 11 years ago
scene.c d6035000dc SDL 1.2.15 compatibility 9 years ago
scene.h d6035000dc SDL 1.2.15 compatibility 9 years ago
script.c 1d74726652 Audio system refactor 8 years ago
script.h fd9a91e7c6 Unified version 8 years ago
sdlpal.cfg.example 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
sdlpal.icns 5209110704 Mac & ios project/icon file update 8 years ago
sdlpal.ico 305aba1c83 Change ICON & fix dialog 8 years ago
sdlpal.xpm 8d4be3267d Initial check-in. 11 years ago
sound.c ae5e9deff9 Fix android compilation bug & little sound play bug 8 years ago
text.c 6efe461668 Not trimming trailing spaces in customized words 8 years ago
text.h 174f929f43 [WIP] Refactor 2: new configuration model & WP8.1 enhancement 8 years ago
ui.c 8b01585662 Change: Customization for status screen. 8 years ago
ui.h 174f929f43 [WIP] Refactor 2: new configuration model & WP8.1 enhancement 8 years ago
uibattle.c f3ae0012c5 New sound play model: Moving major processing steps (resample & convert) from main thread to audio thread 8 years ago
uibattle.h 112754ca15 Remove PAL_UNICODE definition 8 years ago
uigame.c 1d74726652 Audio system refactor 8 years ago
uigame.h 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
util.c 124361ef8a Eliminate MIDI calls when PAL_HAS_NATIVEMIDI is not defined 8 years ago
util.h f194722fc4 Various changes 8 years ago
video.c 71ee1b519c Fix the overlay render bug on some platforms 8 years ago
video.h 9963fee8d1 New options on window size & aspect ratio control. 8 years ago
yj1.c 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago

README.txt

SDLPAL
======

SDLPAL is an SDL-based reimplementation of the classic Chinese-language RPG
"Xian Jian Qi Xia Zhuan" (also known as PAL or Legend of Sword and Fairy).


LICENSE
=======

SDLPAL is originally created by Wei Mingzhi from 2009.
Copyright (c) 2009-2011 Wei Mingzhi .
Copyright (c) 2011-2016 SDLPAL development team.
All rights reserved.

SDLPAL is distributed under the terms of GNU General Public License, version 3
(or any later version) as published by the Free Software Foundation. See
gpl.txt for details.

Many of the ideas of this program are based on documents from PAL
Research Project (https://github.com/palxex/palresearch), and portions of the
code are based on the work done by Baldur and louyihua.

The resampler code is based on the code in Kode54's foo_input_adplug project
(https://github.com/kode54/foo_input_adplug).

This program made extensive use of the following libraries:

SDL (http://www.libsdl.org/)
Adplug (http://adplug.sourceforge.net/)
SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/)
libmad (http://www.underbit.com/products/mad/)
libogg & libvorbis (http://www.vorbis.com/)
FLTK (http://www.fltk.org)

And some of the OPL simulation cores this program used are from the DOSBOX
project (http://www.dosbox.com) and MAME project (http://mamedev.org/).

Please see authors.txt for additional authors.

This program does NOT include any code or data files of the original game,
which is proprietary and copyrighted by SoftStar Inc.


COMPILE FOR WINDOWS
===================

The Microsoft Visual Studio 2013 or higher is supported under Windows.

To compile the WIN32 desktop version, open the Visual Studio project file
'sdlpal.sln' under the 'win32' directory.

To comiple the WinRT version, open one of the project files (SDLPal.UWP.sln,
SDLPal.Windows.sln, SDLPal.WindowsPhone.sln) under the 'winrt' directory.
Please note that, to compile the UWP version, Visual Studio 2015 or higher
is required.

For all situations, you need to have SDL 2.0 development or source files
installed at the SDL2 directory under the source tree.


COMPILE FOR GNU/LINUX OR UNIX
=============================

To compile, type:

cd unix
make

You need to have SDL 2.0 development files installed. The compiled executable
should be generated with the filename 'sdlpal' at the current directory. By
default, SDLPAL uses the FLTK library to provide setting GUI at launch. If you
do not want to use the library, please define the macro 'PAL_NO_LAUNCH_UI' in
the makefile.

SDLPAL should also be able to compile and run under other UNIX-like systems,
however it's not tested.


COMPILE FOR MAC OS X
====================

To compile, open the project Pal.xcodeproj with Xcode, and click Build. You
need to have SDL framework installed at /Library/Frameworks.

The compiled bundle should work as a "universal" binary which works on both
Intel and PowerPC.


COMPILE FOR IOS
===============

To be written.


COMPILE FOR ANDROID
===================

To be written.


COMPILE FOR OTHER PLATFORMS
===========================

To be written.


CLASSIC BUILD
=============

By default, SDLPAL uses a revised battle system which is more exciting yet
somewhat harder than the original game. If you prefer the traditional
turn-based battle system, uncomment the following line:

//#define PAL_CLASSIC 1

in the file common.h and recompile. This will build a "classic" build which is
100% the same as the original game.


RUNNING THE GAME
================

The data files required for running the game are not included with the source
package due to copyright issues. You must obtain them from the original CD.

To run the game, copy all the files on the original CD to a directory, then
copy the SDLPAL executable to the same directory, and run the executable.

Note that the filenames of data files should be in lower-case under GNU/Linux
(or other UNIX-like operating systems).


CONFIGURE THE GAME
==================

PAL has several variants using different and incompatible resource files. Now
SDLPAL supports several configuration options for supporting such variants.

To set these configuration options, create a file named as 'sdlpal.cfg' (make
sure to use lower-case file name in UNIX-like operating systems) in the game
directory created by the above step. If no configuration file exists, SDLPAL
uses default values that supports the original resources of DOS version.

Please refer to the 'sdlpal.cfg.example' for configuration file format.


-END OF FILE-