sam-ludlow / mame-ao

Run MAME easily, automatic download and setup for binaries and ROMs from archive.org
MIT License
91 stars 13 forks source link

SQlite lock, first run issues. #12

Closed cewatkins closed 9 months ago

cewatkins commented 9 months ago

So, got this thing yesterday, I've put it ona view machines, some nix, other is winblows. Winblows works as expected, and I could use and pass the dircopy to nix, (Because it would do this on instaLL.)

wineserver: file_set_error() can't map error: Function not implemented

!!! FATAL ERROR: database is locked database is locked

code = Busy (5), message = System.Data.SQLite.SQLiteException (0x87AF00AA): dat abase is locked database is locked at System.Data.SQLite.SQLite3.Prepare (

Also, it ends up being 0 bytes for the file, I assume that the rebuild after data change cause it to re-sync lie you state. Uh, also, I'm using bottles and other whiney attempts..

But I found the product cause I would use btfs similarly, but yeah, the size and availability on the scene, reminds me when it was 300 baud.. So this works pretty slick. the sym link and/or/a delta addition would be intersting.. Oh, yeah, proper game pick for the readme pic..

sam-ludlow commented 9 months ago

Hello @cewatkins thanks for the feedback.

I've not attempted to run on anything other than Windows but it sounds interesting and would to get it working.

Looks like some sort of SQLite problem, mame-ao writes out a zero byte file to create a new empty database, before calling any SQLite functions, maybe this is a problem?

So you are running Wine? Do the Windows MAME binaries run OK on Wine?

Cheers Sam

sam-ludlow commented 9 months ago

You could copy the SQLite DBs from a windows installation (with same versions) to see if that is the problem.

cewatkins commented 9 months ago

So, yes, I've got it working on a few machines in slightly different ways, I haven't poked myself enough to install microsoft's compiler, but I did look at the source. So, today, just as a hmm, I wonder, I just replaced mame.exe with linux version,(now, I may have messed up the hashes with that a bit, So, ill be keeping a eye on that) But the mame.exe's work so well in wine I had forgot that it probably was running in wine. So; the sql problem; I'm going to guess it has to do with dotnet.48 (and to try and track it down, I swapped it out and .net verions, also mono. The first time I got it to work, it was fairly vania wine. I attempted bottles and there's some issues there, but one doesn't seem to need the gpu proton updates. Also, I attempted to run it in wsl, now, I rdp in to it, so I messed with d3d vs opengl. (At one point I said, ah, who's gonna use rdp to play games.) So until not to long ago it was pretty solid on my weakest, plane jane wine box, but I have also been doing things like copying the files from a existance that didn't have the sql error and then trying it in that. But the functionality idea of this is great, I've messed around here and there with mame for few ..decades. probably, but keeping those roms without drives and rom managers is just a continual pain. So a local executable client like archive.org has it neet oh. And wine's kinda that way, can be tricky, but one machine vanilla basically, it just installed, took awhile, but, just worked.

|)/`. /\/\/-|) a ()xy()zb()urne venture

On Sun, Jan 28, 2024 at 5:16 AM Sam Ludlow @.***> wrote:

Hello @cewatkins https://github.com/cewatkins thanks for the feedback.

I've not attempted to run on anything other than Windows but it sounds interesting and would to get it working.

Looks like some sort of SQLite problem, mame-ao writes out a zero byte file to create a new empty database, before calling any SQLite functions, maybe this is a problem?

So you are running Wine? Do the Windows MAME binaries run OK on Wine?

Cheers Sam

— Reply to this email directly, view it on GitHub https://github.com/sam-ludlow/mame-ao/issues/12#issuecomment-1913576651, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVTVJHHLM5I5J2F5LCBN3YQY6QNAVCNFSM6AAAAABCM5IM2WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGU3TMNRVGE . You are receiving this because you were mentioned.Message ID: @.***>

cewatkins commented 9 months ago

Also, not to blast you, but; "Symbolic Links Enabled: False" (Id guess this tests in a API? there's no secpol in wine & symbolic links are enabled.) Yeah, it eats up space. And I don't think one can spawn any native binary from cmd.exe, it just ignores um.

|)/`. /\/\/-|) a ()xy()zb()urne venture

On Sun, Jan 28, 2024 at 4:13 PM Chris Watkins @.***> wrote:

So, yes, I've got it working on a few machines in slightly different ways, I haven't poked myself enough to install microsoft's compiler, but I did look at the source. So, today, just as a hmm, I wonder, I just replaced mame.exe with linux version,(now, I may have messed up the hashes with that a bit, So, ill be keeping a eye on that) But the mame.exe's work so well in wine I had forgot that it probably was running in wine. So; the sql problem; I'm going to guess it has to do with dotnet.48 (and to try and track it down, I swapped it out and .net verions, also mono. The first time I got it to work, it was fairly vania wine. I attempted bottles and there's some issues there, but one doesn't seem to need the gpu proton updates. Also, I attempted to run it in wsl, now, I rdp in to it, so I messed with d3d vs opengl. (At one point I said, ah, who's gonna use rdp to play games.) So until not to long ago it was pretty solid on my weakest, plane jane wine box, but I have also been doing things like copying the files from a existance that didn't have the sql error and then trying it in that. But the functionality idea of this is great, I've messed around here and there with mame for few ..decades. probably, but keeping those roms without drives and rom managers is just a continual pain. So a local executable client like archive.org has it neet oh. And wine's kinda that way, can be tricky, but one machine vanilla basically, it just installed, took awhile, but, just worked.

|)/`. /\/\/-|) a ()xy()zb()urne venture

On Sun, Jan 28, 2024 at 5:16 AM Sam Ludlow @.***> wrote:

Hello @cewatkins https://github.com/cewatkins thanks for the feedback.

I've not attempted to run on anything other than Windows but it sounds interesting and would to get it working.

Looks like some sort of SQLite problem, mame-ao writes out a zero byte file to create a new empty database, before calling any SQLite functions, maybe this is a problem?

So you are running Wine? Do the Windows MAME binaries run OK on Wine?

Cheers Sam

— Reply to this email directly, view it on GitHub https://github.com/sam-ludlow/mame-ao/issues/12#issuecomment-1913576651, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVTVJHHLM5I5J2F5LCBN3YQY6QNAVCNFSM6AAAAABCM5IM2WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGU3TMNRVGE . You are receiving this because you were mentioned.Message ID: @.***>

sam-ludlow commented 9 months ago

Hello re. symbolic links.

mame-ao just attempts to create a symbolic link to test if enabled. https://github.com/sam-ludlow/mame-ao/blob/main/source/MameAO.cs#L170

Linking is done by spawning a cmd.exe then using the "mklink" command. https://github.com/sam-ludlow/mame-ao/blob/main/source/Tools.cs#L286

This was the only way I could get satisfactory results when it came to UTF8 encoding of filenames.

So probably not very portable to *nix.

I will load a Linux box at some point and have a play.

cewatkins commented 9 months ago

Oh, btw, close, but the SQL error, I got it working to a degree on code spaces, I'll try and see if I can do that, it's be a neat store your name for free trick.

On Mon, Jan 29, 2024, 2:30 AM Sam Ludlow @.***> wrote:

Hello re. symbolic links.

mame-ao just attempts to create a symbolic link to test if enabled. https://github.com/sam-ludlow/mame-ao/blob/main/source/MameAO.cs#L170

Linking is done by spawning a cmd.exe then using the "mklink" command. https://github.com/sam-ludlow/mame-ao/blob/main/source/Tools.cs#L286

This was the only way I could get satisfactory results when it came to UTF8 encoding of filenames.

So probably not very portable to *nix.

I will load a Linux box at some point and have a play.

— Reply to this email directly, view it on GitHub https://github.com/sam-ludlow/mame-ao/issues/12#issuecomment-1914294855, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVTVNJZYA7JX365LZNGVDYQ5T2PAVCNFSM6AAAAABCM5IM2WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJUGI4TIOBVGU . You are receiving this because you were mentioned.Message ID: @.***>

cewatkins commented 9 months ago

update; to use wine, load no extra packages, let mono do it's thing. (You're right the api for links is way different.) Also, footnote web upgrade today worked, that was on the windows platform & am building with m$ compiler as well as wine and indeed, one can use the same filesystem.

cewatkins commented 9 months ago

So, lot more time with it, compiled the code, so, i did a import, but I did it on roms for devices, the sub machine devices & I dont think that was intended/taken into account.. So, Also, I've attempted things as follows.. . -video bgfx -ui_active -ramsize 2048k -plugin discord -v at586 -isa1 3c505 -is a2 aha1542b -isa3 sblaster_16 -isa4 s3virgedx -isa5 stereo_fx

But, if I understand the fs, structure, the roms/payload is in TOPDIR, (There are a upgrade, in the _STORE, when they get in?) Anyway, it's neato, I figure I can just dump them in the mame's path, I decided to go out a wacko bend and refabricate a monster PC I had in 96.) So, I was just testing, the _ao infrastructure makes it nice, but I by default I couldn't see how to get it do add specific device, I figure it's more game oriented, buut that & like you say a few archive.org things aren't there, but the mass amount of things that work is unlike all the other frontends in that manner..

Oh, the SQL issue, i believe was cause I added sdk stuff, I test from compiling it on win11 too. |)/`. /\/\/-|) a ()xy()zb()urne venture

On Sun, Jan 28, 2024 at 6:32 AM Sam Ludlow @.***> wrote:

You could copy the SQLite DBs from a windows installation (with same versions) to see if that is the problem.

— Reply to this email directly, view it on GitHub https://github.com/sam-ludlow/mame-ao/issues/12#issuecomment-1913598024, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVTVMABBJYXSJ2BWYI5ELYQZHNTAVCNFSM6AAAAABCM5IM2WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGU4TQMBSGQ . You are receiving this because you were mentioned.Message ID: @.***>