dMZX Forums: Numpad 5 key doesn't work when numlock is disabled -> Archived MegaZeux Bugs -> Tracker

Jump to content

Report ID 744 Title Numpad 5 key doesn't work when numlock is disabled
Product Archived MegaZeux Bugs Status Dependency Flaw (Severity 2 - Fair)
Version 2.91i Fixed in 2.91j
Introduced In Version 2.91dOperating System All platforms

Page 1 of 1
  • Cannot start a new Issue
  • Closed Issue This issue is locked

Report ID #744: Numpad 5 key doesn't work when numlock is disabled

#1 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 19 January 2019 - 12:09 AM

This is a dependency issue with SDL versions starting some time after 2.0.5. When numlock is disabled, SDL will translate numpad 5 to numpad clear internally. Since we ignore the clear key, this results in numpad 5 doing nothing when numpad is disabled. The correct behavior of numpad 5 in MZX is that it should return the codes 261 (internal/SDL 1.x) and 76 (PC XT) and act like the space bar for the built-in player.

SDL issue.

A potential fix would be to translate SDLK_CLEAR to IKEY_KP5, but this would make the clear key (mostly only present on Mac keyboards) act like numpad 5. I think I'd prefer to continue not supporting the clear key so Mac users don't accidentally use it expecting other people's keyboards to have it.

Alternatively, we can just roll back to SDL 2.0.5 until this is fixed, but that sounds kind of overkill for a key used in maybe a handful of games.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository


Page 1 of 1  
  • Cannot start a new Issue
  • Closed Issue This issue is locked

Replies (1 - 6)

#2 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 05 February 2019 - 01:57 AM

This breaks the wait function in Math: The Roguelike when numlock is disabled. This game uses key# and works fine when numlock is enabled.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#3 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 05 February 2019 - 02:16 AM

Updating status to: Dependency Flaw
Updating severity to: 2 - Fair
Issue fixed in: 2.92

A temporary workaround has been added in GIT 897cd3af in the master branch. This hack needs to be removed once SDL fixes their bug. Please do not archive this issue until that happens.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#4 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 17 February 2019 - 11:58 PM

Issue fixed in: 2.91j
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#5 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 11 June 2019 - 03:40 AM

SDL fixed this on their end, so now all that's left for this one is the hack needs to be version locked or removed after the next release of SDL. In the meantime it might be useful to isolate the hack for Windows builds anyway.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#6 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 04 August 2019 - 07:45 PM

This has been locked to Windows builds built against SDL versions between 2.0.6 and 2.0.9 (inclusive) in GIT c102823e. This can probably be archived whenever 2.92b is released.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#7 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 24 September 2019 - 11:02 PM

Moving to: Archived MegaZeux Bugs


Page 1 of 1
  • Cannot start a new Issue
  • Closed Issue This issue is locked

1 User(s) are reading this issue
1 Guests and 0 Anonymous Users


Powered by IP.Tracker 1.3.2 © 2024  IPS, Inc.