I just found this project/thread, but I've been working on something similar for quite a while! You seem to be farther ahead than I ever got, though, so I just thought I'd post this stuff:

I wrote
this tutorial on Data Crystal back in 2013 (I think? It was my first year of college) based on what I learned while making this new story text. Feel free to recreate it if you want!
I also have this TXT file that I must have either written or found somewhere.
Pointer table is at 4010
The [END] control code can be different, depending on which part of the ROM the text is in.
The [END] control code is [80] --> Offset = Pointer + 4010
[4C][80] to 405C
[77][80] to 4087 << GUINEA PIG POINTER
[A1][80] to 40B1
[B9][80] to 40C9
[E3][80] to 40F3
The [END] control code is [81] --> Offset = Pointer + 4110
[05][81] to 4115
[2D][81] to 413D
[52][81] to 4162
[79][81] to 4189
[97][81] to 41A7
[AE][81] to 41BE
[D2][81] to 41E2
[F8][81] to 4208
The [END] control code is [82] --> Offset = Pointer + 4210
[2C][82] to 423C
[41][82] to 4251
[58][82] to 4268
[7D][82] to 428D
[94][82] to 42A4
[B8][82] to 42C8
[CD][82] to 42DD
[F5][82] to 4305
The [END] control code is [83] --> Offset = Pointer + 4310
[0D][83] to 431D
[4D][83] to 435D
[70][83] to 4380
[9C][83] to 43AC
[C6][83] to 43D6
[F0][83] to 4400
The [END] control code is [84] --> Offset = Pointer + 4410
[1C][84] to 442C
[3F][84] to 444F
[6D][84] to 447D
[90][84] to 44A0
[B8][84] to 44C8
[E3][84] to 44F3
The [END] control code is [85] --> Offset = Pointer + 4510
[0E][85] to 451E
[26][85] to 4536
[53][85] to 4563
[68][85] to 4578
[7E][85] to 458E
EDIT: Here's another screenshot. This is where I was in my last savestate, I was changing this guy's pointer to test out all of the strings.