The Windows headers include a file called ioaccess.h in the ddk folder, which exposes...
authorReactOS Portable Systems Group <ros-arm-bringup@svn.reactos.org>
Tue, 5 Feb 2008 02:40:08 +0000 (02:40 +0000)
committerReactOS Portable Systems Group <ros-arm-bringup@svn.reactos.org>
Tue, 5 Feb 2008 02:40:08 +0000 (02:40 +0000)
commit3be034d2ceb5c7647697b5d68edfe0fca1b8ca86
treef120c127c99955976d183587a283347a9520c597
parent74e7cbf5b85ba2cc2d7bb765111bb8fc24e7072e
The Windows headers include a file called ioaccess.h in the ddk folder, which exposes various READ/WRITE_PORT/REGISTER_ routines as inlined macros for various architectures (PPC, MIPS, AMD64, IA64, X86), making use of the MSVC compiler-intrinsics (inp, outp, etc). Since ReactOS already has those intrinscs implemented, we've also created an ioaccess.h w32api header file which makes use of them.
We can now remove the portio.h and portio.c files in FreeLDR, since there's no more need to duplicate this code.
Additionally, this can be also done with the PPC port of FreeLDR or any other architecture, since it doesn't require per-architecture support in FreeLDR anymore -- only the underlying intrinsics in intrin.h must be implemented (note that for PPC, MIPS and ARM, the notion of a port doesn't even exist -- those functions map to register-reading functions, where register basically means memory).

svn path=/trunk/; revision=32130
reactos/boot/freeldr/freeldr/arch/i386/portio.c [deleted file]
reactos/boot/freeldr/freeldr/arch/i386/xboxdisk.c
reactos/boot/freeldr/freeldr/freeldr_arch.rbuild
reactos/boot/freeldr/freeldr/include/freeldr.h
reactos/boot/freeldr/freeldr/include/portio.h [deleted file]
reactos/include/ddk/ioaccess.h [new file with mode: 0755]