Changes in the code to work on AmigaOS4 and release files added
This commit is contained in:
parent
100218a3c2
commit
64f00204e7
|
@ -0,0 +1,4 @@
|
||||||
|
*.o
|
||||||
|
*.d
|
||||||
|
*.lha
|
||||||
|
rs
|
|
@ -0,0 +1,55 @@
|
||||||
|
|
||||||
|
SDL_CFLAGS := -I/sdk/local/newlib/include/SDL2 -DNDEBUG=1
|
||||||
|
# -DUSE_STATIC_SCALER=1
|
||||||
|
SDL_LIBS := -lSDL2_mixer -lmikmod -lmodplug -lFLAC -logg \
|
||||||
|
-lSDL2 -lpthread -athread=native -lstdc++
|
||||||
|
|
||||||
|
MODPLUG_LIBS := -lmodplug
|
||||||
|
TREMOR_LIBS := #-lvorbisidec -logg
|
||||||
|
ZLIB_LIBS := -lz
|
||||||
|
|
||||||
|
LIBS = $(SDL_LIBS) $(MODPLUG_LIBS) $(TREMOR_LIBS) $(ZLIB_LIBS)
|
||||||
|
|
||||||
|
CXXFLAGS += -Wall -Wextra -Wno-unused-parameter -Wpedantic -MMD $(SDL_CFLAGS) -DUSE_MODPLUG -DUSE_STB_VORBIS -DUSE_ZLIB
|
||||||
|
|
||||||
|
SRCS = collision.cpp cpc_player.cpp cutscene.cpp decode_mac.cpp file.cpp fs.cpp game.cpp graphics.cpp main.cpp \
|
||||||
|
menu.cpp midi_parser.cpp mixer.cpp mod_player.cpp ogg_player.cpp \
|
||||||
|
piege.cpp prf_player.cpp protection.cpp resource.cpp resource_aba.cpp \
|
||||||
|
resource_mac.cpp scaler.cpp screenshot.cpp seq_player.cpp \
|
||||||
|
sfx_player.cpp staticres.cpp systemstub_sdl.cpp unpack.cpp util.cpp video.cpp
|
||||||
|
|
||||||
|
#CXXFLAGS += -DUSE_STATIC_SCALER
|
||||||
|
#SCALERS := scalers/scaler_nearest.cpp scalers/scaler_tv2x.cpp scalers/scaler_xbr.cpp
|
||||||
|
|
||||||
|
#CXXFLAGS += -DUSE_MIDI_DRIVER
|
||||||
|
#MIDIDRIVERS := midi_driver_adlib.cpp midi_driver_mt32.cpp
|
||||||
|
#MIDI_LIBS := -lmt32emu
|
||||||
|
|
||||||
|
LIBS = $(MIDI_LIBS) $(MODPLUG_LIBS) $(SDL_LIBS) $(TREMOR_LIBS) $(ZLIB_LIBS)
|
||||||
|
|
||||||
|
OBJS = $(SRCS:.cpp=.o) $(SCALERS:.cpp=.o) $(MIDIDRIVERS:.cpp=.o)
|
||||||
|
DEPS = $(SRCS:.cpp=.d) $(SCALERS:.cpp=.d) $(MIDIDRIVERS:.cpp=.d)
|
||||||
|
|
||||||
|
rs: $(OBJS)
|
||||||
|
$(CXX) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f $(OBJS) $(DEPS)
|
||||||
|
|
||||||
|
# prepare an archive for the program
|
||||||
|
release:
|
||||||
|
@echo "Creating release files..."
|
||||||
|
@strip rs
|
||||||
|
@mkdir -p release/
|
||||||
|
@copy ALL release_files/ release/ QUIET
|
||||||
|
@mkdir -p release/REminiscence/data
|
||||||
|
@mkdir -p release/REminiscence/saves
|
||||||
|
@copy rs "release/REminiscence/"
|
||||||
|
@copy README.txt "release/REminiscence/"
|
||||||
|
@copy rs.cfg "release/REminiscence/"
|
||||||
|
@echo "Creating release archive..."
|
||||||
|
@lha -aeqr3 a REminiscence.lha release/
|
||||||
|
@echo "Clean release files..."
|
||||||
|
@delete release ALL QUIET FORCE
|
||||||
|
|
||||||
|
-include $(DEPS)
|
4
fs.cpp
4
fs.cpp
|
@ -4,6 +4,10 @@
|
||||||
* Copyright (C) 2005-2019 Gregory Montoir (cyx@users.sourceforge.net)
|
* Copyright (C) 2005-2019 Gregory Montoir (cyx@users.sourceforge.net)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#if defined(__amigaos4__)
|
||||||
|
#include <sys/unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
#define WIN32_LEAN_AND_MEAN
|
#define WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
8
main.cpp
8
main.cpp
|
@ -18,8 +18,8 @@
|
||||||
static const char *USAGE =
|
static const char *USAGE =
|
||||||
"REminiscence - Flashback Interpreter\n"
|
"REminiscence - Flashback Interpreter\n"
|
||||||
"Usage: %s [OPTIONS]...\n"
|
"Usage: %s [OPTIONS]...\n"
|
||||||
" --datapath=PATH Path to data files (default 'DATA')\n"
|
" --datapath=PATH Path to data files (default 'data')\n"
|
||||||
" --savepath=PATH Path to save files (default '.')\n"
|
" --savepath=PATH Path to save files (default 'saves')\n"
|
||||||
" --levelnum=NUM Start to level, bypass introduction\n"
|
" --levelnum=NUM Start to level, bypass introduction\n"
|
||||||
" --fullscreen Fullscreen display\n"
|
" --fullscreen Fullscreen display\n"
|
||||||
" --widescreen=MODE 16:9 display (adjacent,mirror,blur,none)\n"
|
" --widescreen=MODE 16:9 display (adjacent,mirror,blur,none)\n"
|
||||||
|
@ -195,8 +195,8 @@ static WidescreenMode parseWidescreen(const char *mode) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
const char *dataPath = "DATA";
|
const char *dataPath = "data";
|
||||||
const char *savePath = ".";
|
const char *savePath = "saves/";
|
||||||
int levelNum = 0;
|
int levelNum = 0;
|
||||||
bool fullscreen = false;
|
bool fullscreen = false;
|
||||||
bool autoSave = false;
|
bool autoSave = false;
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,45 @@
|
||||||
|
# REminiscence for AmigaOS 4.1 FE
|
||||||
|
|
||||||
|
REminiscence is a re-implementation of the engine used in the game Flashback
|
||||||
|
made by Delphine Software and released in 1992. It is developed
|
||||||
|
by Gregory Montoir and you can find it on GitHub at
|
||||||
|
https://github.com/cyxx/REminiscence
|
||||||
|
|
||||||
|
The icon is based on cedry2kio work as found at
|
||||||
|
https://www.deviantart.com/cedry2kio/art/Flashback-Icon-1-404447315
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Extract the archive wherever you want. In the REminiscence there is the
|
||||||
|
*data* folder where you need to copy the data files for the game. The
|
||||||
|
*saves* folder is where tha saves files will be stored.
|
||||||
|
|
||||||
|
Please read the README.txt file for more information about where to
|
||||||
|
find the data files.
|
||||||
|
|
||||||
|
## I would like to thank
|
||||||
|
|
||||||
|
- Gregory Montoir for developing and open sourcing REminiscence
|
||||||
|
- Capehill for his tireless work on SDL port for AmigaOS 4.1 FE
|
||||||
|
|
||||||
|
## Known issues
|
||||||
|
|
||||||
|
None yet. If you find any issue please let me know.
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
If you enjoy what I am doing and would like to keep me up during the night,
|
||||||
|
please consider to buy me a coffee at:
|
||||||
|
https://ko-fi.com/walkero
|
||||||
|
|
||||||
|
## Known issues
|
||||||
|
|
||||||
|
You can find the known issues at
|
||||||
|
https://git.walkero.gr/walkero/breakhack/issues
|
||||||
|
|
||||||
|
# Changelog
|
||||||
|
|
||||||
|
## [0.5.1r1] - 2023-09-17
|
||||||
|
### Added
|
||||||
|
- First release for AmigaOS 4
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,14 @@
|
||||||
|
stack 50000
|
||||||
|
|
||||||
|
Set title "REminiscence"
|
||||||
|
|
||||||
|
Set rcnum `RequestChoice "$title" "Run in window or fullscreen?" "Window" "Fullscreen" "Oh, forget it"`
|
||||||
|
|
||||||
|
If $rcnum EQ 1
|
||||||
|
rs --scaler scale@3
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
If $rcnum EQ 2
|
||||||
|
rs --fullscreen
|
||||||
|
ENDIF
|
||||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -608,6 +608,7 @@ void SystemStub_SDL::processEvent(const SDL_Event &ev, bool &paused) {
|
||||||
_pi.quit = true;
|
_pi.quit = true;
|
||||||
break;
|
break;
|
||||||
case SDL_WINDOWEVENT:
|
case SDL_WINDOWEVENT:
|
||||||
|
#if !defined(__amigaos4__)
|
||||||
switch (ev.window.event) {
|
switch (ev.window.event) {
|
||||||
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
||||||
case SDL_WINDOWEVENT_FOCUS_LOST:
|
case SDL_WINDOWEVENT_FOCUS_LOST:
|
||||||
|
@ -615,6 +616,7 @@ void SystemStub_SDL::processEvent(const SDL_Event &ev, bool &paused) {
|
||||||
SDL_PauseAudio(paused);
|
SDL_PauseAudio(paused);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
case SDL_JOYHATMOTION:
|
case SDL_JOYHATMOTION:
|
||||||
if (_joystick) {
|
if (_joystick) {
|
||||||
|
|
2
util.cpp
2
util.cpp
|
@ -18,6 +18,7 @@
|
||||||
|
|
||||||
uint16_t g_debugMask;
|
uint16_t g_debugMask;
|
||||||
|
|
||||||
|
#ifndef NDEBUG
|
||||||
void debug(uint16_t cm, const char *msg, ...) {
|
void debug(uint16_t cm, const char *msg, ...) {
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
if (cm & g_debugMask) {
|
if (cm & g_debugMask) {
|
||||||
|
@ -32,6 +33,7 @@ void debug(uint16_t cm, const char *msg, ...) {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void error(const char *msg, ...) {
|
void error(const char *msg, ...) {
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
Loading…
Reference in New Issue