Skip to content

Commit 1ba4314

Browse files
authored
Add more dreamcast compilers (#1691)
* Add more dreamcast compilers * Add more compilers
1 parent 8181210 commit 1ba4314

File tree

3 files changed

+49
-0
lines changed

3 files changed

+49
-0
lines changed

backend/compilers/compilers.linux.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,17 @@ saturn:
183183
- cygnus-2.7-96Q3
184184

185185
dreamcast:
186+
- shc-v5.0r10
187+
- shc-v5.0r26
188+
- shc-v5.0r28
189+
- shc-v5.0r31
190+
- shc-v5.0r32
191+
- shc-v5.1r01
192+
- shc-v5.1r03
193+
- shc-v5.1r04
194+
- shc-v5.1r08
186195
- shc-v5.1r11
196+
- shc-v5.1r13
187197

188198
macosx:
189199
- gcc-5026

backend/coreapp/compilers.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -509,14 +509,33 @@ def available_platforms() -> List[Platform]:
509509
cc=SATURN_CC,
510510
)
511511

512+
# earlier shc doesn't accept -fpu=single or -aggressive=2
513+
DREAMCAST_CC_V50R10 = (
514+
'cat "$INPUT" | unix2dos > dos_src.c && '
515+
"cp -r ${COMPILER_DIR}/bin/* . && "
516+
"(SHC_LIB=. SHC_TMP=. ${WINE} ${COMPILER_DIR}/bin/shc.exe dos_src.c ${COMPILER_FLAGS} -comment=nonest -cpu=sh4 -division=cpu -endian=little -extra=a=1800 -pic=0 -macsave=0 -sjis -string=const -object=dos_src.obj) && "
517+
"${WIBO} ${COMPILER_DIR}/bin/elfcnv.exe dos_src.obj ${OUTPUT}"
518+
)
519+
520+
SHC_V50R10 = SHCCompiler(id="shc-v5.0r10", platform=DREAMCAST, cc=DREAMCAST_CC_V50R10)
521+
512522
DREAMCAST_CC = (
513523
'cat "$INPUT" | unix2dos > dos_src.c && '
514524
"cp -r ${COMPILER_DIR}/bin/* . && "
515525
"(SHC_LIB=. SHC_TMP=. ${WINE} ${COMPILER_DIR}/bin/shc.exe dos_src.c ${COMPILER_FLAGS} -comment=nonest -cpu=sh4 -division=cpu -fpu=single -endian=little -extra=a=1800 -pic=0 -macsave=0 -sjis -string=const -aggressive=2 -object=dos_src.obj) && "
516526
"${WIBO} ${COMPILER_DIR}/bin/elfcnv.exe dos_src.obj ${OUTPUT}"
517527
)
518528

529+
SHC_V50R26 = SHCCompiler(id="shc-v5.0r26", platform=DREAMCAST, cc=DREAMCAST_CC)
530+
SHC_V50R28 = SHCCompiler(id="shc-v5.0r28", platform=DREAMCAST, cc=DREAMCAST_CC)
531+
SHC_V50R31 = SHCCompiler(id="shc-v5.0r31", platform=DREAMCAST, cc=DREAMCAST_CC)
532+
SHC_V50R32 = SHCCompiler(id="shc-v5.0r32", platform=DREAMCAST, cc=DREAMCAST_CC)
533+
SHC_V51R01 = SHCCompiler(id="shc-v5.1r01", platform=DREAMCAST, cc=DREAMCAST_CC)
534+
SHC_V51R03 = SHCCompiler(id="shc-v5.1r03", platform=DREAMCAST, cc=DREAMCAST_CC)
535+
SHC_V51R04 = SHCCompiler(id="shc-v5.1r04", platform=DREAMCAST, cc=DREAMCAST_CC)
536+
SHC_V51R08 = SHCCompiler(id="shc-v5.1r08", platform=DREAMCAST, cc=DREAMCAST_CC)
519537
SHC_V51R11 = SHCCompiler(id="shc-v5.1r11", platform=DREAMCAST, cc=DREAMCAST_CC)
538+
SHC_V51R13 = SHCCompiler(id="shc-v5.1r13", platform=DREAMCAST, cc=DREAMCAST_CC)
520539

521540
# PS2
522541
IOP_GCC281 = GCCPS2Compiler(
@@ -1561,7 +1580,17 @@ def available_platforms() -> List[Platform]:
15611580
# Saturn
15621581
CYGNUS_2_7_96Q3,
15631582
# Dreamcast
1583+
SHC_V50R10,
1584+
SHC_V50R26,
1585+
SHC_V50R28,
1586+
SHC_V50R31,
1587+
SHC_V50R32,
1588+
SHC_V51R01,
1589+
SHC_V51R03,
1590+
SHC_V51R04,
1591+
SHC_V51R08,
15641592
SHC_V51R11,
1593+
SHC_V51R13,
15651594
# PS2
15661595
IOP_GCC281,
15671596
IOP_GCC2952_102,

frontend/src/lib/i18n/locales/en/compilers.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,17 @@
196196
"gcc2.7.2.2-mipsel": "gcc 2.7.2.2 + maspsx",
197197
"gcc2.7.2.3-mipsel": "gcc 2.7.2.3 + maspsx",
198198

199+
"shc-v5.0r10": "SHC v5.0 (Release 10)",
200+
"shc-v5.0r26": "SHC v5.0 (Release 26)",
201+
"shc-v5.0r28": "SHC v5.0 (Release 28)",
202+
"shc-v5.0r31": "SHC v5.0 (Release 31)",
203+
"shc-v5.0r32": "SHC v5.0 (Release 32)",
204+
"shc-v5.1r01": "SHC v5.1 (Release 1)",
205+
"shc-v5.1r03": "SHC v5.1 (Release 3)",
206+
"shc-v5.1r04": "SHC v5.1 (Release 4)",
207+
"shc-v5.1r08": "SHC v5.1 (Release 8)",
199208
"shc-v5.1r11": "SHC v5.1 (Release 11)",
209+
"shc-v5.1r13": "SHC v5.1 (Release 13)",
200210

201211
"psyq3.3": "PSYQ3.3 (gcc 2.6.0 + aspsx 2.21)",
202212
"psyq3.5": "PSYQ3.5 (gcc 2.6.0 + aspsx 2.34)",

0 commit comments

Comments
 (0)