In shorts, I've checked code, and if I undersand correctly You are using InStr in wrong way, in GLBasic it's:
pos% = INSTR(where_to_look$, what_you_want_to_find$, start%=0)
so it should be:
ins = INSTR(self.contents[i][c].sval$,param$)
in 'search_table_partial' function and that's working... despite that I would advise to declare variables as integers %, by default they are float #..
ah.. @Quentin was faster :]
data is already there, yet at least I've some problem with fonts - solid black background, properly visible only after hover/focus.