void read_port (pulong -w target, ushort address)
{
  asm () / R0, R24
  {
    SETPTR R24, address;                                             /* R24 = address; */
    LOAD R0, R24, DT_DWORD;                                          /* R0 = ^R24;     */

    SETPTR R24, target;                                              /* R24 = target;  */
    STORE R24, R0, DT_DWORD;                                         /* R24^ = R0;     */
  }
}