usbloadergx/libcios/include/starlet.h
dimok321 0e7d37b18b *Fixed crash with loading .iso files
*Fixed freeze in theme menu when its empty
*Optimized the game list loading on fat/ntfs/ext. This should speed up the loading process.
*Added cache of game titles. This will speed up the startup after the cache file is written (in other words on second start of this rev). A TitlesCache.bin will be created in the same path as the wiitdb.xml for this. This should especial speed up the startup of fat/ntfs/ext partitions by a lot if no sub folders with the game titles are used, like GAMEID.wbfs only. That must have been painfully slow before on a lot of games. Should be at about the same speed as with sub folders now. I would still recommend to use sub folders.
*Removed wiilight (disc slot) blinking when switching USB port on Hermes cIOSes (thanks rodries)
*Added the ehcmodule sources from rodries to the branches
*Updated language files
2011-02-11 17:41:52 +00:00

93 lines
3.7 KiB
C

#ifndef STARLET_H
#define STARLET_H
// info from wiibrew.org
// IRQS (32 bits registers)
/*
IRQ Description
0 Starlet Timer
1 NAND Interface
2 AES Engine
3 SHA-1 Engine
4 USB Host Controller (EHCI)
5 USB Host Controller (OHCI0)
6 USB Host Controller (OHCI1)
7 SD Host Controller
8 802.11 Wireless
9 Unknown
10 Hollywood GPIOs (Broadway)
11 Hollywood GPIOs (Starlet)
12-16 Unknown
17 Reset button
18-29 Unknown
30 IPC (Broadway)
31 IPC (Starlet)
*/
#define HW_PPCIRQFLAG 0x0d800030 // Broadway IRQ Flags (write 1 to clear)
#define HW_PPCIRQMASK 0x0d800034 // Broadway IRQ Mask (write 1 to set)
#define HW_ARMIRQFLAG 0x0d800038 // Starlet IRQ Flags (write 1 to clear)
#define HW_ARMIRQMASK 0x0d80003c // Starlet IRQ Mask (write 1 to set)
// GPIOS (32 bits registers)
/*
Bit Direction Connection Description
0 IN POWER Power button input (pulse width limited; will not detect a held-down state).
1 OUT SHUTDOWN Output high to turn system off (Power LED = red).
2 OUT FAN Fan power, active high.
3 OUT DC_DC DC/DC converter power, active high (powers the Broadway?[check]). When off, also triggers the Yellow power LED.
4 OUT DI_SPIN DI spinup disable. If clear, the drive attempts to spin up a disc when reset (if there is one in the drive). If set, the drive ignores a present disc when reset.
5 OUT SLOT_LED Blue disc slot LED, active high.
6 IN EJECT_BTN Eject button (pulse width limited). Button press will also trigger the drive directly.
7 IN SLOT_IN Disc slot optical detector. High if disc in drive, disc being inserted, or disc still in slot after eject.
8 OUT SENSOR_BAR Sensor bar, active high.
9 OUT DO_EJECT Pulse high to trigger a DI eject from software.
10 OUT EEP_CS SEEPROM Chip Select.
11 OUT EEP_CLK SEEPROM Clock.
12 OUT EEP_MOSI Data to SEEPROM.
13 IN EEP_MISO Data from SEEPROM.
14 OUT AVE_SCL A/V Encoder I²C Clock.
15 I/O AVE_SDA A/V Encoder I²C Data (has an external pull-up, so you should only drive it low).
16 OUT DEBUG0 Debug Testpoint TP221.
17 OUT DEBUG1 Debug Testpoint TP222.
18 OUT DEBUG2 Debug Testpoint TP223.
19 OUT DEBUG3 Debug Testpoint TP224.
20 OUT DEBUG4 Debug Testpoint TP225.
21 OUT DEBUG5 Debug Testpoint TP226.
22 OUT DEBUG6 Debug Testpoint TP219.
23 OUT DEBUG7 Debug Testpoint TP220.
*/
#define HW_GPIOB_OUT 0x0d8000c0 // GPIO Outputs (Broadway access)
#define HW_GPIOB_DIR 0x0d8000c4 // GPIO Direction (Broadway access)
#define HW_GPIOB_IN 0x0d8000c8 // GPIO Inputs (Broadway access)
#define HW_GPIOB_INTLVL 0x0d8000cc // GPIO Interrupt Levels (Broadway access)
#define HW_GPIOB_INTFLAG 0x0d8000d0 // GPIO Interrupt Flags (Broadway access)
#define HW_GPIOB_INTMASK 0x0d8000d4 // GPIO Interrupt Masks (Broadway access)
#define HW_GPIOB_INMIR 0x0d8000d8 // GPIO Input Mirror (Broadway access)
#define HW_GPIO_ENABLE 0x0d8000dc // GPIO Enable (Starlet only)
#define HW_GPIO_OUT 0x0d8000e0 // GPIO Outputs (Starlet only)
#define HW_GPIO_DIR 0x0d8000e4 // GPIO Direction (Starlet only)
#define HW_GPIO_IN 0x0d8000e8 // GPIO Inputs (Starlet only)
#define HW_GPIO_INTLVL 0x0d8000ec // GPIO Interrupt Levels (Starlet only)
#define HW_GPIO_INTFLAG 0x0d8000f0 // GPIO Interrupt Flags (Starlet only)
#define HW_GPIO_INTMASK 0x0d8000f4 // GPIO Interrupt Masks (Starlet only)
#define HW_GPIO_INMIR 0x0d8000f8 // GPIO Input Mirror (Starlet only)
#define HW_GPIO_OWNER 0x0d8000fc // GPIO Owner Select (Starlet only)
// TIMER (32 bits registers)
#define HW_TIMER 0x0d800010 // Timer counter
#define HW_ALARM 0x0d800014 // Alarm value
#endif