From Bulbapedia:
Trading between Generations II and earlier with Generations III and later is impossible due to the vastly different data structures that were introduced in Generation III (such as Individual Values ranging from 0 to 31), as well as the difficulty in linking a Game Boy Color game to a Game Boy Advance game and the lack of any link cable ports on later systems.
This means in ORAS you can't have Pokemon originally caught in Blue, Red, Yellow, Gold, Silver and Crystal, but every other version is compatible. Pokemon from Ruby, Sapphire and Emerald are the "oldest" you can have on modern games.
Regarding hardware and accessories:
Trading requires two game consoles and two Pokémon games of compatible generations.
Prior to Generation IV, trading required a link cable or a GBA Wireless Adapter. Although the Nintendo DS supports Generation III games, it cannot be used to trade between those games as the DS lacks hardware support for the link cable. Also, Transfer Packs can be used to trade in Generation I and in Generation II, via Pokémon Stadium and Pokémon Stadium 2.
The Pal Park feature of Generation IV games uses the GBA slot of the Nintendo DS, so unlike other trading requires only one game console. However, it is not compatible with the Nintendo DSi, DSi XL, or 3DS, which do not have a GBA slot.
For further info, check the sources I linked.
EDIT:
This page explains the process you need to trade between different generations.