sronco / mame-chessengine

MAME Chess UCI/XBoard Interface plugin
10 stars 6 forks source link

mame-chessengine doesn't work with the latest versions of mame #12

Open Lazz09 opened 3 years ago

Lazz09 commented 3 years ago

chessengine doesn't work with the latest versions of mame, could you fix it?

sronco commented 3 years ago

Recent MAME versions have some backwards incompatible changes in the Lua interface and I haven't found the time to update this plugin, I hope to find some time in the next weeks.

happppp commented 3 years ago

Thanks for the update!

There are some changes needed from 0.231 to 0.232 too, but pretty minor compared to the driver overhauls of the previous month. At the moment, the newly changed drivers are:

sronco commented 3 years ago

chessmst and slc1 require simple changes, I have both working locally, but I think it's better to keep this plugin working with official MAME releases, I will push the patch after the next release. It is usually easy to update the plugin when only the input/output tags change, but MAME 0.227 has a Lua interface overhaul that took a bit more work.

Plextor52 commented 3 years ago

Hi Sandro, first of all, thank you very much for your plugins and that you have now largely adapted them to the big Lua overhaul since v0.227. You wrote, that you will push an update after the release of v0.232. Will this also include adjustments for the new Saitek modules "Analyst" and "Maestro", which hap recently published (btw: big thanks to @hap for his tireless work on the chess drivers)? That would be great, if you could do it too. :) Franz has created his own solution for his CB Emu, which unfortunately, as a Lua beginner, I cannot implement in the current Mess version.

Vegetatio commented 3 years ago

Hello Sandro I have added a few additional functions to some interfaces. Move takeback, player mode, score depth output etc.

Only with the position input I have difficulties, there the following does not work:

local function sb_clear_board(tag send_input(tag .. ":UI", 0x0100, 0.09) -- SensorBoard Clear board = { { 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 }} end

Renaissa need some change in the init.llua function search_selected_piece. The piece_to ,i search it,if the LED of the field (piece_from) are off.

chessengint.zip

Vegetatio commented 3 years ago

In the MAME 0.226 Setup has works.

Vegetatio commented 3 years ago

Hi Sandro

I have now identified my problem. In the function sb_reset_board() i have assigned the variable "sensorboard" with the "tag". Then i was able to use this one for example at function move back . But now the "tag" is not copied to "sensorboard". i helped myself now by setting sensorboard with ":board" by default and the interfaces, which address the sensorboard differently, with the query sensorboard=interface.sensorboard() (polgar as example (":board:board")) now i must look at all interfaces....

Or is there a more elegant way?

@Plextor52: You can find my software here : https://c.gmx.net/@954923852104733824/yj9qqeByTv-S_BK-vxSVSw

the plugin works with mame 0.232 only the "function.set_frequenz" in any interfaces you have to delete or get my build of messchess.exe

Mysticum Touch is a GUI for a homebuilt board. https://www.michael-lang-schach.de/forum/viewtopic.php?f=25&t=288https://www.michael-lang-schach.de/forum/viewtopic.php?f=25&t=288

Greetings Guido

Lazz09 commented 2 years ago

Hi Guido

the gmx.net link is broken

Greetings Luis

El dom, 20 jun 2021 a las 12:35, Vegetatio @.***>) escribió:

Hi Sandro

I have now identified my problem. In the function sb_reset_board() i have assigned the variable "sensorboard" with the "tag". Then i was able to use this one for example at function move back . But now the "tag" is not copied to "sensorboard". i helped myself now by setting sensorboard with ":board" by default and the interfaces, which address the sensorboard differently, with the query sensorboard=interface.sensorboard() (polgar as example (":board:board")) now i must look at all interfaces....

Or is there a more elegant way?

@Plextor52 https://github.com/Plextor52: You can find my software here : @.***/yj9qqeByTv-S_BK-vxSVSw

the plugin works with mame 0.232 only the "function.set_frequenz" in any interfaces you have to delete or get my build of messchess.exe

Mysticum Touch is a GUI for a homebuilt board.

https://www.michael-lang-schach.de/forum/viewtopic.php?f=25&t=288https://www.michael-lang-schach.de/forum/viewtopic.php?f=25&t=288

Greetings Guido

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/sronco/mame-chessengine/issues/12#issuecomment-864533071, or unsubscribe https://github.com/notifications/unsubscribe-auth/ATYG7R7PSHA3GWMWKRDT233TTW76VANCNFSM43HRBXBA .