## Код:
```
TYPE
   (* Delphi types *)
   Cardinal = INTEGER;
   PChar* = POINTER [untagged] TO ARRAY [untagged] OF SHORTCHAR;
  Pointer* = INTEGER;
  Integer* = INTEGER;

  (*LongWord = DWORD;
  THandle = Cardinal;*)
  (* SDL_types.h types *)
  (* Basic data types *)

  Bool = Integer; (* SDL_FALSE, SDL_TRUE *)

  PSInt8 = ^SInt8;
  SInt8 = Shortint;
```


В интерфейсных модулях сторонних библиотек (большей частью, написанных на C) я считаю верных подходом отделять определение базовых типов в специальные модули. Такие модули, как правило, аппаратно- и компиляторо-зависимы.
Вместо такого описания (как в примере кода) я бы создал отдельный модуль, в котором определил такие типы, как UInt8, Pointer, Integer, Cardinal, PChar и прочие. Затем импортировал бы их в интерфейсном модуле. Так мы добиваемся универсальности при переносе на другие платформы и компиляторы, даже в пределах совместимости между различными компиляторами Оберонов.