1
0
mirror of https://github.com/djhackersdev/bemanitools.git synced 2024-11-24 14:50:10 +01:00

Merge branch 'master' of dev.s-ul.eu:djhackers/bemanitools

This commit is contained in:
Will Xyen 2020-08-12 12:31:14 -07:00
commit 69ef963451
4 changed files with 12 additions and 3 deletions

View File

@ -1,4 +1,4 @@
This library drives a "legacy" ezusb IO board, also known as C02 IO, and
This library drives a "legacy" ezusb IO board, also known as C02/D01 IO, and
implements the iidxio API of BT5. Thus, it allows you to use this IO board with
*any* version of IIDX that is supported by BT5.
@ -24,5 +24,7 @@ the status LEDs on the side of the board should show a blinking pattern.
dump to the FPGA.
* There is a script called ezusb-boot.bat which combines the two steps above
and can be integrated into the startup process of a dedicated setup.
* If you are using a D01 IO board, use the `fpga-d01.bin` file instead of the
`fpga.bin` file.
* If you ignore these steps, you will either run into errors or parts of the
IO board won't work (e.g. lights).

View File

@ -160,6 +160,10 @@ static HRESULT ezusb_iidx_emu_msg_interrupt_read(struct iobuf *read)
otherwise the game's fpga check will fail */
msg_resp->fpga2_check_flag_unkn = 2;
#ifdef EZUSB_IIDX_EMU_D01_BOARD
msg_resp->inverted_pad &= ~(1 << 4);
#endif
read->pos = sizeof(*msg_resp);
return S_OK;

View File

@ -59,7 +59,9 @@ struct ezusb_iidx_msg_interrupt_read_packet {
1: Not used
2: Not used
3: Not used
4: Not used
4: C02/D01 board identifier, 1 = C02, 0 = D01 (on active low). This defines how the game has
to flash the FPGA board since D01 needs a different firmware (see result of FPGA CHECK on
game bootup)
5: Not used
6: usb mute?
7: Not used

View File

@ -192,7 +192,8 @@ uint8_t iidx_io_ep2_get_slider(uint8_t slider_no)
uint8_t iidx_io_ep2_get_sys(void)
{
return ((~iidx_io_ezusb_read_packet.inverted_pad) >> 28) & 0x03;
return (((~iidx_io_ezusb_read_packet.inverted_pad) >> 28) & 0x03) |
((((~iidx_io_ezusb_read_packet.inverted_pad) >> 22) & 0x01) << 2);
}
uint8_t iidx_io_ep2_get_panel(void)