Skip to content

Commit 60a3f54

Browse files
Experimental PR - Island arcade (#30)
--------- Co-authored-by: Markus Kalkbrenner <git@kalki.de>
1 parent 6212596 commit 60a3f54

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

src/dmdreader.cpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -354,6 +354,11 @@ DmdType detect_dmd() {
354354
(de < 9600) && (rdata > 65) && (rdata < 80)) {
355355
return DMD_ALVING;
356356

357+
// Island/SPinball(?) -> DOTCLK: 2323000 | DE: 18150 | RDATA: 565
358+
} else if ((dotclk > 2200000) && (dotclk < 2450000) && (de > 17650) &&
359+
(de < 18500) && (rdata > 540) && (rdata < 590)) {
360+
return DMD_ISLAND;
361+
357362
// Capcom -> DOTCLK: 4168000 | DE: 16280 | RDATA: 510
358363
} else if ((dotclk > 4000000) && (dotclk < 4300000) && (de > 16000) &&
359364
(de < 16500) && (rdata > 490) && (rdata < 530)) {
@@ -877,6 +882,26 @@ bool dmdreader_init(bool return_on_no_detection) {
877882
break;
878883
}
879884

885+
case DMD_ISLAND: {
886+
uint input_pins[] = {RDATA};
887+
dmdreader_programs_init(
888+
&dmd_reader_gottlieb_program,
889+
dmd_reader_gottlieb_program_get_default_config,
890+
&dmd_framedetect_gottlieb_program,
891+
dmd_framedetect_gottlieb_program_get_default_config, input_pins, 1,
892+
0);
893+
894+
source_width = 128;
895+
source_height = 32;
896+
source_bitsperpixel = 4;
897+
target_bitsperpixel = 4;
898+
source_planesperframe = 4;
899+
source_planehistoryperframe = 0;
900+
source_lineoversampling = LINEOVERSAMPLING_NONE;
901+
source_mergeplanes = MERGEPLANES_ADD;
902+
break;
903+
}
904+
880905
case DMD_CAPCOM: {
881906
uint input_pins[] = {RDATA, RCLK};
882907
dmdreader_programs_init(&dmd_reader_capcom_program,

0 commit comments

Comments
 (0)