No Description

Wenting Zhang 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
3ds 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
English.lproj f56380d1ef Initial commit. 11 years ago
Pal.xcodeproj c56fd1260c fix min/max defination collition with multiple compiler 7 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 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
dingux f194722fc4 Various changes 8 years ago
emscripten a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 years ago
gph f194722fc4 Various changes 8 years ago
ios 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
libmad 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
liboggvorbis a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 years ago
native_midi a7235db0d7 Added VS.net 2008 Project 11 years ago
psp f194722fc4 Various changes 8 years ago
unix 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
wii f194722fc4 Various changes 8 years ago
win32 f2233d05bb added mingw makefile ( static build ) 7 years ago
winrt 439e9253c3 Project file update for new sound play model 8 years ago
.gitignore a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 years ago
.travis.yml 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
AUTHORS.txt 77bf04e2cc Minor change in licensing information & bug fix in makemessage.py 8 years ago
Info.plist 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
README.txt 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
ascii.h 614e33d3c2 Bug fix: dead lock on exit, overlay on non-touch devices 8 years ago
audio.c a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 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 c14510fee0 status UI: applied 8x8/shadow for most labels used here 7 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 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 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 8e8cdecdd4 OSX compilation fix & travis-ci fix 7 years ago
font.h db959a75bb added bdf font support 7 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 db959a75bb added bdf font support 7 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 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 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 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 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 9c43187b03 Added two missing newline marks in makemessage.py 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 a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 years ago
palcfg.c db959a75bb added bdf font support 7 years ago
palcfg.h a0681238ce HTML5 support via emscripten( no audio/sfx now) 7 years ago
palcommon.c 9f9b818ec5 add back dialog shadow effect from original version 7 years ago
palcommon.h 9f9b818ec5 add back dialog shadow effect from original version 7 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 f2233d05bb added mingw makefile ( static build ) 7 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 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 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 9f9b818ec5 add back dialog shadow effect from original version 7 years ago
ui.h c14510fee0 status UI: applied 8x8/shadow for most labels used here 7 years ago
uibattle.c 1080ef28b3 some UI text tweak, mainly for using in international project 7 years ago
uibattle.h 112754ca15 Remove PAL_UNICODE definition 8 years ago
uigame.c 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
uigame.h 3d484b530d Resource version auto-detection & bug fixes & fullscreen enabled 8 years ago
util.c 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 years ago
util.h f194722fc4 Various changes 8 years ago
video.c 3f6284967f nbzwt: Port to Nintendo 3DS; Fix SDL 1.2 support (#2) 7 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.

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

You need to have SDL2 source extracted in the SDL2 folder.To compile,
open the project iOS/SDLPAL/SDLPal.xcodeproj with Xcode, and click Build.


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

You need to have SDL2 source extracted in the SDL2 folder.
To compile, type:
cd android/jni
ndk-build
cd ..
ant debug

COMPILE FOR NINTENDO 3DS
========================

To compile, type:

cd 3ds
make
make cia

You need to have DevkitPro ARM and SDL 1.2 for 3DS portlib installed. The
compiled executable should be generated with the filename 'sdlpal' at the
current directory.

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-