wenn ich TList richtig verstanden habe, ist TList genau das was Du suchst:
TList verwaltet eine Liste mit Pointern und verfügt über die Methoden Add, Delete etc.
Pointer sind afaik 4Byte-Speicheradressen, d.h. genauso lang wie'n Integer.
Du kannst also den TList-Elementen direkt einen Integerwert zuweisen und hast Deine "TIntegerList".
Solange Du nicht versuchst, ein solches Element als Pointer auf eine Speicheradresse zu verwenden, sollte das keine Probleme bereiten.
Da ich aber wieder mal recht lange auf den Beinen bin, garantiere ich nicht, das ich nich irgendwas gravierendes übersehen habe