Link to that github? Here are some patches to mydb.c for extended functionality:
Code:
--- mydb.c 2003-06-02 11:16:02.000000000 -0400
+++ midb.c 2020-04-11 16:35:34.168016570 -0400
@@ -1,3 +1,4 @@
+/* XXX HRB 2020.04.11 cputype additions for IRIX 6.2, etc. */
/*******************************************************************************
These routines where writen in an attemp to give me more flexibility
@@ -83,6 +84,8 @@
#define GR_SERVER 6
#define GR_ECLIPSE 7
#define GR_VENICE 8
+#define GR_NEWPORT 9
+#define GR_NEWPRESS 10
/* possible SUBGR values */
#define SG_EXPRESS 1
@@ -98,6 +101,11 @@
#define SG_MHPI 12
#define SG_ECLIPSE 13
#define SG_VENICE 14
+#define SG_IP19 15
+#define SG_IP21 16
+#define SG_I264 17
+#define SG_NG1 18
+#define SG_NEWPRESS 19
/* possible values for CPUBOARD */
#define CPU_IP5 1
@@ -109,11 +117,16 @@
#define CPU_IP4 7
#define CPU_IP20 8
#define CPU_R2300 9
+#define CPU_IP19 10
+#define CPU_IP22 11
+#define CPU_IP21 12
+#define CPU_IP26 13
/* possible values for CPUARCH */
#define ARCH_R2300 1
#define ARCH_R3000 2
#define ARCH_R4000 3
+#define ARCH_R8000 4
/* format and macros for a CPUARCH+CPUBOARD+GFXBOARD+SUBGR value
bit 0-1 : CPUARCH
@@ -127,7 +140,7 @@
#define CPUBOARD_POS 2
#define GFXBOARD_MASK 0x0f
#define GFXBOARD_POS 6
-#define SUBGR_MASK 0x0f
+#define SUBGR_MASK 0x1f
#define SUBGR_POS 10
#define getall(val,mask,pos) ((val>>pos)&mask)
#define get_cpuarch(val) (getall(val,CPUARCH_MASK,CPUARCH_POS))
@@ -148,6 +161,8 @@
{"VGXT", GR_STAPUFT,},
{"SKYWR", GR_STAPUFT,},
{"VENICE", GR_VENICE,},
+{"NEWPORT", GR_NEWPORT,},
+{"NEWPRESS",GR_NEWPRESS,},
NULL,
};
static LUTENT sg_lut[]={
@@ -158,6 +173,7 @@
{"IP4GT", SG_IP4GT,},
{"IP5GT", SG_IP5GT,},
{"IP7GT", SG_IP7GT,},
+{"IP7", SG_IP7GT,},
{"IP17", SG_IP17,},
{"IP17SKY", SG_IP17SKY,},
{"LG1MC", SG_LG1MC,},
@@ -165,6 +181,11 @@
{"VENICE", SG_VENICE,},
{"MHPI", SG_MHPI,},
{"SKYWR", SG_IP17SKY,},
+{"IP19", SG_IP19,},
+{"IP21", SG_IP21,},
+{"I2_64", SG_I264,},
+{"NG1", SG_NG1,},
+{"NEWPRESS",SG_NEWPRESS,},
NULL,
};
static LUTENT cpu_lut[]={
@@ -177,6 +198,10 @@
{"IP17", CPU_IP17},
{"IP20", CPU_IP20},
{"R2300", CPU_R2300},
+{"IP19", CPU_IP19},
+{"IP22", CPU_IP22},
+{"IP21", CPU_IP21},
+{"IP26", CPU_IP26},
NULL,
};
static LUTENT arch_lut[]={
@@ -185,6 +210,7 @@
{"R3000", ARCH_R3000},
{"MIPS1", ARCH_R3000},
{"MIPS2", ARCH_R4000},
+{"R8000", ARCH_R8000},
NULL,
};
@@ -313,10 +339,12 @@
{last_mask=0xffff<<SUBGR_POS; return getlut(sg_lut, val)<<SUBGR_POS;}
else if(!strcmp(type, "GFXBOARD"))
{last_mask=0xffff<<GFXBOARD_POS; return getlut(gr_lut, val)<<GFXBOARD_POS;}
+ else if(!strcmp(type, "MODE"))
+ {last_mask=0xffff<<MODE_POS; return getlut(gr_lut, val)<<MODE_POS;}
else
{
fprintf(stderr, "Unknown variable type (%s)\n", type);
- exit(1);
+ /* exit(1); */
}
}
static char unparse(SFILE *sfile)