Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Libretro
uae4arm-libretro
Commits
a1c2897a
Commit
a1c2897a
authored
May 31, 2020
by
Chips-fr
Browse files
Add aros rom as kickstart fallback
parent
a19f540a
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Makefile.common
View file @
a1c2897a
...
...
@@ -15,6 +15,7 @@ INCFLAGS += -I$(CORE_DIR)/libretro/libco \
OBJS
=
\
$(EMU)
/audio.o
\
$(EMU)
/aros.rom.o
\
$(EMU)
/autoconf.o
\
$(EMU)
/blitfunc.o
\
$(EMU)
/blittable.o
\
...
...
README.md
View file @
a1c2897a
...
...
@@ -30,3 +30,5 @@ Kickstarts supported in options configuration:
|A500|KS v1.3 rev 34.005|
**kick34005.A500**
|262 144|82a21c1890cae844b3df741f2762d48d|
|A600|KS v3.1 rev 40.063|
**kick40063.A600**
|524 288|e40a5dfb3d017ba8779faba30cbd1c8e|
|A1200|KS v3.1 rev 40.068|
**kick40068.A1200**
|524 288|646773759326fbac3b2311fd8c8793ee|
If kickstart is not present, AROS kickstart replacement will be used.
\ No newline at end of file
src/aros.rom.cpp
0 → 100644
View file @
a1c2897a
This diff is collapsed.
Click to expand it.
src/memory.cpp
View file @
a1c2897a
...
...
@@ -26,6 +26,8 @@
#include <android/log.h>
#endif
#include "core-log.h"
#ifdef JIT
/* Set by each memory handler that does not simply access real memory. */
int
special_mem
;
...
...
@@ -2037,6 +2039,39 @@ static void patch_kick(void)
kickstart_fix_checksum
(
kickmemory
,
kickmem_size
);
}
extern
unsigned
char
arosrom
[];
extern
unsigned
int
arosrom_len
;
static
int
load_kickstart_replacement
(
void
)
{
struct
zfile
*
f
;
LOGI
(
"Load aros kickstart replacement.
\n
"
);
f
=
zfile_fopen_data
(
"aros.gz"
,
arosrom_len
,
arosrom
);
if
(
!
f
)
return
false
;
f
=
zfile_gunzip
(
f
);
if
(
!
f
)
return
false
;
kickmem_mask
=
0x80000
-
1
;
kickmem_size
=
0x80000
;
extendedkickmem_size
=
0x80000
;
extendedkickmem_type
=
EXTENDED_ROM_KS
;
extendedkickmemory
=
mapped_malloc
(
extendedkickmem_size
,
"rom_e0"
);
extendedkickmem_bank
.
baseaddr
=
extendedkickmemory
;
read_kickstart
(
f
,
extendedkickmemory
,
extendedkickmem_size
,
0
,
1
);
extendedkickmem_mask
=
extendedkickmem_size
-
1
;
read_kickstart
(
f
,
kickmemory
,
0x80000
,
1
,
0
);
zfile_fclose
(
f
);
// config without any other fast ram with m68k aros: enable special extra RAM.
if
(
currprefs
.
fastmem_size
==
0
&&
currprefs
.
z3fastmem_size
==
0
&&
currprefs
.
gfxmem_size
==
0
)
{
changed_prefs
.
fastmem_size
=
0x100000
;
LOGI
(
"1MB fastmem added for AROS support
\n
"
);
}
return
1
;
}
static
int
load_kickstart
(
void
)
{
struct
zfile
*
f
;
...
...
@@ -2062,6 +2097,7 @@ static int load_kickstart (void)
}
addkeydir
(
currprefs
.
romfile
);
if
(
f
==
NULL
)
{
/* still no luck */
return
load_kickstart_replacement
();
#if defined(AMIGA)||defined(__POS__)
#define USE_UAE_ERSATZ "USE_UAE_ERSATZ"
if
(
!
getenv
(
USE_UAE_ERSATZ
))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment