Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
"Fabother World" an interpreter for Another World (Out of this world).
C++ C
branch: master

Fix crash on AmigaOS4

latest commit d25fa27040
fabien sanglard authored
Failed to load latest commit information.
vs2010 Rename visual studio folder to vs2010.
xcode/raw/raw.xcodeproj Add xcode project.
.gitignore Add xcode project.
COPYING Initial commit
Makefile Makefile: Added support for platform autodetection
README Fixed typo in project.
README.newraw Initial commit
bank.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
bank.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
endian.h endian.h: Added a AUTO_DETECT_PLATFORM define to override auto-detect
engine.cpp endian.h: fix incorrect regex replacements caused by stdint.h changes
engine.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
file.cpp endian.h: fix incorrect regex replacements caused by stdint.h changes
file.h endian.h: fix incorrect regex replacements caused by stdint.h changes
intern.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
main.cpp Typo
mixer.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
mixer.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
parts.cpp Added comment for understanding memory segment usage.
parts.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
resource.cpp Fix crash on AmigaOS4
resource.h For better code legibility, use MEMENTRY_STATE_* instead of plain int…
serializer.cpp endian.h: fix incorrect regex replacements caused by stdint.h changes
serializer.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
sfxplayer.cpp For better code legibility, use MEMENTRY_STATE_* instead of plain int…
sfxplayer.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
staticres.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
sys.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
sysImplementation.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
util.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
util.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
video.cpp eliminate uint8 (et. al.) types in favor of stdint.h type definitions
video.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions
vm.cpp For better code legibility, use MEMENTRY_STATE_* instead of plain int…
vm.h eliminate uint8 (et. al.) types in favor of stdint.h type definitions

README

This is "Fabother World": an Another World (Out Of This World in North America) interpreter codebase. This work is based on:

- Piotr Padkowski's newRaw interpreter which was based on
- Gregory Montoir's reverse engineering of
- Eric Chahi's assembly code.

I cleaned up a lot of the code, removing cryptic hexadecimal notation
with meaningful macros name. I also cleanup a lot of the code so it has a 
C/C++ philosophy instead of an assembly structure.

I also created a Visual Studio 2010 project.

TODO:

Create a MacOS X project.
Add a different rendering path OpenGL support.

Fabien Sanglard


raw README
Release version: 0.1.1 (May 15 2004)
-------------------------------------------------------------------------------

About:
------

raw is a re-implementation of the engine used in the game Another World. This 
game, released under the name Out Of This World in non-European countries, was 
written by Eric Chahi at the beginning of the '90s. More information can be 
found here : http://www.mobygames.com/game/sheet/p,2/gameId,564/.

Please be aware that, currently, this implementation may contains bugs and 
non-implemented features that make it impossible to finish the game.

Supported Versions:
-------------------

Currently, only the english PC DOS version is supported ("Out of this World").

Compiling:
----------

Tweak the Makefile if needed and type make (only gcc3 has been tested so far).
The SDL and zlib libraries are required.

Running:
--------

You will need the original files, here is the required list :
    BANK*
    MEMLIST.BIN
	
To start the game, you can either :
- put the game's datafiles in the same directory as the executable
- use the --datapath command line option to specify the datafiles directory

Here are the various in game hotkeys :
    Arrow Keys      allow you to move Lester
    Enter/Space     allow you run/shoot with your gun
    C               allow to enter a code to jump at a specific level
    P               pause the game
    Alt X           exit the game
    Ctrl S          save game state
    Ctrl L          load game state
    Ctrl + and -    change game state slot
    Ctrl F          toggle fast mode
    Alt Enter       toggle windowed/fullscreen mode
    Alt + and -     change scaler factor

Credits:
--------

Eric Chahi, obviously, for making this great game.

Contact:
--------

Gregory Montoir, cyx@users.sourceforge.net
Something went wrong with that request. Please try again.