Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v40] PC-98 (Neko Project 2 Kai) Keyboard Input Not Working On DOS - Cannot Boot Games #12936

Open
loganknecht opened this issue Nov 15, 2024 · 3 comments

Comments

@loganknecht
Copy link

loganknecht commented Nov 15, 2024

Batocera build version

40 2024/08/01 01:28

Your architecture

Steam Deck

Your Graphic Processor Unit(s) (GPU)

AMD Custom GPU 0405

Issue description

Hello!

I'm having an issue with the Neko Project 2 Kai for PC98 keyboard input.
I have read the documentation here and it doesn't seem to provide any clear guidance.
https://wiki.batocera.org/systems:pc98

--- Quick Notes ---

  • Steam Deck
  • Batocera v40
  • RetroArch
  • Neko Project 2 Kai
  • Confirmed Bios are working and detected
    • Batocera confirms it
    • Retro Arch confirms it

I have attached the images to demonstrate my issue.

I am able to successfully launch games like Popful Mail, Rusty, etc. But I cannot use my keyboard to interact.

In addition to that, there are random games I'm testing like Tokimeki Sports Girl, where I am booted into the DOS menu. I'm more than happy to initiate the .bat file to run, but my keyboard input is not read in as being typed. Meaning I cannot enter commands like DIR /P etc.

HOWEVER, I can initiate Game Focus as others have recommended, but my keyboard input isn't being input to the DOS menu.


The situation I find myself in is this

  • Some games boot without issue
  • Some games are booting me to DOS
  • My keyboard input doesn't work in DOS
  • My keyboard is detected because I can switch to Game Focus mode with Scroll Lock
  • I cannot enter any keyboard characters

What am I doing wrong here?

What do I need to do in order to use the DOS menu with my keyboard in order to launch these games?


Images

01
02
03
04

Detailed reproduction steps

  1. Install Batocera v40 via Balena Etcher to SD Card
  2. Insert into steam deck
  3. Hold Volume Minus (-) button while pressing power and select batocera sd card to boot to
  4. Connect to Batocera over network
  5. Transfer PC98 game to /usershare/roms/pc98
    • I used ときめきスポーツギャル3
  6. Open the game you transferred, it should boot to the DOS menu
  7. Press Scroll Lock to enable Game Focus
  8. Try typing

Details of any attempts to fix this yourself

I have tried

  • different power adapters
  • different keyboard mappings
  • changing the game settings key mappings for retro arch
  • opened a reddit thread
  • posting on the batocera discord

Nothing has been suggested on how to resolve this.

Details of any modifications you have made to Batocera.

N/A

Logs and data

No response

@loganknecht loganknecht changed the title Neko Project 2 Kai Keyboard Input Not Working v40 Neko Project 2 Kai Keyboard Input Not Working Nov 15, 2024
@loganknecht
Copy link
Author

Hello.

A quick update on this.

I have been trying to debug this, and I am having no luck.

  • I have set my input to manual keyboard
  • I have modified the global input settings
  • I have discussed this with others who seem to be working correctly.

I cannot get the keyboard to work when a game boots to the DOS menu

I have tried deleting my configuration mapping at /usershare/system/configs/retroarch/config/remaps/common/common.rmp and that does nothing.

The current game (randomly picked) that I'm testing is ときめきスポーツギャル3. There are others as well that launch up asking me to boot with a Y/N and I cannot input.

I know the keyboard works because I can use it to navigate the emulation station menu. AND, I can toggle the Game Lock screen. I just can't seem to get the DOS menu to provide feedback.

I have once again checked my bios files and the MD5 hashes work correctly.

The only thing I can think of would be to hard-code the keyboard inputs into the common.rmp file so that the keyboard input is explicit, but I don't know how to do that.

Does anyone have suggestions regarding this?

@loganknecht
Copy link
Author

Hello!

Follow-up

I have spent a significant amount of effort to get the keyboard input working for the PC-98 emulator Neko Project 2 Kai.

It just does not work.

  • I cannot get a virtual keyboard to show up as input option
  • I cannot remap keys
  • I have not been able to figure out a pad2key manual override

To my knowledge, the PC-98 implementation just doesn't work if you need to work at the DOS level.

I would love to help with this if someone can guide me to the appropriate area for resolving this. Otherwise I am kindly requesting a fix for this. <3

@loganknecht loganknecht changed the title v40 Neko Project 2 Kai Keyboard Input Not Working [v40] PC-98 (Neko Project 2 Kai) Keyboard Input Not Working On DOS - Cannot Boot Games Nov 24, 2024
@loganknecht
Copy link
Author

I have spent some time trying to use a simple pad2key profile for the /usershare/system/configs/evmap/pc98.keys remap file.

However, it did not work. I cannot get keyboard input to work for the DOS menu or the games, despite having it mapped, and having a keyboard with the required keys.

{
  "actions_player1": [
      {
          "trigger": ["A"],
          "type": "key",
          "target": ["KEY_A"]
      },
      {
          "trigger": ["B"],
          "type": "key",
          "target": ["KEY_B"]
      },
      {
          "trigger": ["C"],
          "type": "key",
          "target": ["KEY_C"]
      },
      {
          "trigger": ["D"],
          "type": "key",
          "target": ["KEY_D"]
      },
      {
          "trigger": ["E"],
          "type": "key",
          "target": ["KEY_E"]
      },
      {
          "trigger": ["F"],
          "type": "key",
          "target": ["KEY_F"]
      },
      {
          "trigger": ["G"],
          "type": "key",
          "target": ["KEY_G"]
      },
      {
          "trigger": ["H"],
          "type": "key",
          "target": ["KEY_H"]
      },
      {
          "trigger": ["I"],
          "type": "key",
          "target": ["KEY_I"]
      },
      {
          "trigger": ["J"],
          "type": "key",
          "target": ["KEY_J"]
      },
      {
          "trigger": ["K"],
          "type": "key",
          "target": ["KEY_K"]
      },
      {
          "trigger": ["L"],
          "type": "key",
          "target": ["KEY_L"]
      },
      {
          "trigger": ["M"],
          "type": "key",
          "target": ["KEY_M"]
      },
      {
          "trigger": ["N"],
          "type": "key",
          "target": ["KEY_N"]
      },
      {
          "trigger": ["O"],
          "type": "key",
          "target": ["KEY_O"]
      },
      {
          "trigger": ["P"],
          "type": "key",
          "target": ["KEY_P"]
      },
      {
          "trigger": ["Q"],
          "type": "key",
          "target": ["KEY_Q"]
      },
      {
          "trigger": ["R"],
          "type": "key",
          "target": ["KEY_R"]
      },
      {
          "trigger": ["S"],
          "type": "key",
          "target": ["KEY_S"]
      },
      {
          "trigger": ["T"],
          "type": "key",
          "target": ["KEY_T"]
      },
      {
          "trigger": ["U"],
          "type": "key",
          "target": ["KEY_U"]
      },
      {
          "trigger": ["V"],
          "type": "key",
          "target": ["KEY_V"]
      },
      {
          "trigger": ["W"],
          "type": "key",
          "target": ["KEY_W"]
      },
      {
          "trigger": ["X"],
          "type": "key",
          "target": ["KEY_X"]
      },
      {
          "trigger": ["Y"],
          "type": "key",
          "target": ["KEY_Y"]
      },
      {
          "trigger": ["Z"],
          "type": "key",
          "target": ["KEY_Z"]
      },
      {
          "trigger": ["ESC"],
          "type": "key",
          "target": ["KEY_FN_ESC"]
      },
      {
          "trigger": ["F1"],
          "type": "key",
          "target": ["KEY_FN_F1"]
      },
      {
          "trigger": ["F2"],
          "type": "key",
          "target": ["KEY_FN_F2"]
      },
      {
          "trigger": ["F3"],
          "type": "key",
          "target": ["KEY_FN_F3"]
      },
      {
          "trigger": ["F4"],
          "type": "key",
          "target": ["KEY_FN_F4"]
      },
      {
          "trigger": ["F5"],
          "type": "key",
          "target": ["KEY_FN_F5"]
      },
      {
          "trigger": ["F6"],
          "type": "key",
          "target": ["KEY_FN_F6"]
      },
      {
          "trigger": ["F7"],
          "type": "key",
          "target": ["KEY_FN_F7"]
      },
      {
          "trigger": ["F8"],
          "type": "key",
          "target": ["KEY_FN_F8"]
      },
      {
          "trigger": ["F9"],
          "type": "key",
          "target": ["KEY_FN_F9"]
      },
      {
          "trigger": ["F10"],
          "type": "key",
          "target": ["KEY_FN_F10"]
      },
      {
          "trigger": ["F11"],
          "type": "key",
          "target": ["KEY_FN_F11"]
      },
      {
          "trigger": ["F12"],
          "type": "key",
          "target": ["KEY_FN_F12"]
      },
      {
          "trigger": ["APOSTROPHE"],
          "type": "key",
          "target": ["KEY_APOSTROPHE"]
      },
      {
          "trigger": ["BACKSLASH"],
          "type": "key",
          "target": ["KEY_BACKSLASH"]
      },
      {
          "trigger": ["BACKSPACE"],
          "type": "key",
          "target": ["KEY_BACKSPACE"]
      },
      {
          "trigger": ["CAPSLOCK"],
          "type": "key",
          "target": ["KEY_CAPSLOCK"]
      },
      {
          "trigger": ["COMMA"],
          "type": "key",
          "target": ["KEY_COMMA"]
      },
      {
          "trigger": ["DOT"],
          "type": "key",
          "target": ["KEY_DOT"]
      },
      {
          "trigger": ["ENTER"],
          "type": "key",
          "target": ["KEY_ENTER"]
      },
      {
          "trigger": ["EQUAL"],
          "type": "key",
          "target": ["KEY_EQUAL"]
      },
      {
          "trigger": ["GRAVE"],
          "type": "key",
          "target": ["KEY_GRAVE"]
      },
      {
          "trigger": ["LEFTALT"],
          "type": "key",
          "target": ["KEY_LEFTALT"]
      },
      {
          "trigger": ["LEFTBRACE"],
          "type": "key",
          "target": ["KEY_LEFTBRACE"]
      },
      {
          "trigger": ["LEFTCTRL"],
          "type": "key",
          "target": ["KEY_LEFTCTRL"]
      },
      {
          "trigger": ["LEFTSHIFT"],
          "type": "key",
          "target": ["KEY_LEFTSHIFT"]
      },
      {
          "trigger": ["MINUS"],
          "type": "key",
          "target": ["KEY_MINUS"]
      },
      {
          "trigger": ["NUMLOCK"],
          "type": "key",
          "target": ["KEY_NUMLOCK"]
      },
      {
          "trigger": ["RIGHTBRACE"],
          "type": "key",
          "target": ["KEY_RIGHTBRACE"]
      },
      {
          "trigger": ["RIGHTSHIFT"],
          "type": "key",
          "target": ["KEY_RIGHTSHIFT"]
      },
      {
          "trigger": ["SCROLLLOCK"],
          "type": "key",
          "target": ["KEY_SCROLLLOCK"]
      },
      {
          "trigger": ["SEMICOLON"],
          "type": "key",
          "target": ["KEY_SEMICOLON"]
      },
      {
          "trigger": ["SLASH"],
          "type": "key",
          "target": ["KEY_SLASH"]
      },
      {
          "trigger": ["SPACE"],
          "type": "key",
          "target": ["KEY_SPACE"]
      },
      {
          "trigger": ["TAB"],
          "type": "key",
          "target": ["KEY_TAB"]
      },

      {
          "trigger": ["KP1"],
          "type": "key",
          "target": ["KEY_KP1"]
      },
      {
          "trigger": ["KP2"],
          "type": "key",
          "target": ["KEY_KP2"]
      },
      {
          "trigger": ["KP3"],
          "type": "key",
          "target": ["KEY_KP3"]
      },
      {
          "trigger": ["KP4"],
          "type": "key",
          "target": ["KEY_KP4"]
      },
      {
          "trigger": ["KP5"],
          "type": "key",
          "target": ["KEY_KP5"]
      },
      {
          "trigger": ["KP5"],
          "type": "key",
          "target": ["KEY_KP5"]
      },
      {
          "trigger": ["KP6"],
          "type": "key",
          "target": ["KEY_KP6"]
      },
      {
          "trigger": ["KP7"],
          "type": "key",
          "target": ["KEY_KP7"]
      },
      {
          "trigger": ["KP8"],
          "type": "key",
          "target": ["KEY_KP8"]
      },
      {
          "trigger": ["KP9"],
          "type": "key",
          "target": ["KEY_KP9"]
      },
      {
          "trigger": ["KPASTERISK"],
          "type": "key",
          "target": ["KEY_KPASTERISK"]
      },
      {
          "trigger": ["KPDOT"],
          "type": "key",
          "target": ["KEY_KPDOT"]
      },
      {
          "trigger": ["KPENTER"],
          "type": "key",
          "target": ["KEY_KPENTER"]
      },
      {
          "trigger": ["KPEQUAL"],
          "type": "key",
          "target": ["KEY_KPEQUAL"]
      },
      {
          "trigger": ["KPJPCOMMA"],
          "type": "key",
          "target": ["KEY_KPJPCOMMA"]
      },
      {
          "trigger": ["KPMINUS"],
          "type": "key",
          "target": ["KEY_KPMINUS"]
      },
      {
          "trigger": ["KPPLUS"],
          "type": "key",
          "target": ["KEY_KPPLUS"]
      },
      {
          "trigger": ["KPSLASH"],
          "type": "key",
          "target": ["KEY_KPSLASH"]
      }
    ]
 }

At this point I don't know what else I can do.

I would love to be able to play an PC-98 game on Batocera, but that does not appear to be feasible on v40.

Is there someone or a maintainer that can confirm this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant