Giter Club home page Giter Club logo

mu's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mu's Issues

Make folder in resource directory "sysApps" that are always installed

Have folders of apps in the resource directory(either RetroArch ./system or QT ~/Mu) named "sysApps" that are always installed when launching an app, could be useful for things like MultiUserHack or ChangeName and Filez is nice too if you want to edit or copy anything.

sysApps.os5 will have the OS 5 apps, sysApps.os4 will have the OS 4 apps.

Blank window running RamBuilder Mu.exe

Describe the bug in detail and how to reproduce it.

  1. https://github.com/meepingsnesroms/Mu/releases/tag/v1/3x3
  2. Follow HowToUseRamBuilder.txt
  3. Use included Mu.exe

Results

  • Windows 7 (32-bit)
    screen shot 2019-02-12 at 12 54 42
  • Windows 10 (64-bit)
    screen shot 2019-02-12 at 12 54 42
  • Wine/CrossOver
    screen shot 2019-02-12 at 13 07 49

Upload your "userdata-en-m515.ram" if you can.

n/a

List your OS, whether you are using the Qt or RetroArch build, the version of the build you are using,

See above.

and the MD5 checksum of your "palmos41-en-m515.rom".

palmos41-en-m515.rom: 412557a221933a8be12622de7a21320a (MD5)

and

palmos41-en-m515.rom: 83cb1d1c76e568b916dc2e7c0bf669f6 (MD5)
bootloader-en-m515.rom: 9da101cd2317830649a31f8fa46debec (MD5)

If you are using the RetroArch build also list your RetroArch version.

1.7.6 does at least boot the Palm ROM that I have.

screen shot 2019-02-12 at 13 10 32

Use compressed .ram image files

The .ram files created on the content directory of Retroarch's build are about 16 MB for every lauched file. If they could be compressed, that'd be awesome.

Support for Japanese

Japanese ROMs I am aware of

  • 3.1
    • palmv31-jp.rom MD5: acc2911865c2beea7244e1f431ea6bba
  • 5.4
    • Simulator_Full_jpJP_Release.rom MD5: 6346c6da7f6e46c3b605d3239e65d4c8
  • Clie
    • ​N700C_jp.rom MD5: 3771d63e3b732cad92ba812a0fdbb44a

None of these work with Mu at the moment.

But, my goal is to play this game: 掌花札 (Palm Hanafuda)

The game plays but the text is not readable.

  1. https://web.archive.org/web/20041204170805/http://muchy.com/review/tenohirahanafudapagj.html
  2. https://web.archive.org/web/20041204110330/http://muchy.com/review/tenohirahanafuda.html
    (you can only install one of these at a time)

Goal (from game 1)

image

Currently (from game 2)

screen shot 2019-02-12 at 14 09 00

Change retroarch button mapping

Using palmos41-en-m515.rom and Retroarch's build.

The current mapping isn't optimal for playing games, as pressing retropad A would move left and retropad B would move right.

palm_buttons

I've tested many games and all of them used the Date Book to move LEFT and Address Book to move Right. So I'd suggest to change the current mapping between these two:
https://github.com/meepingsnesroms/Mu/blob/master/libretroBuildSystem/libretro.c#L230-L231

That way, RETRO_DEVICE_ID_JOYPAD_A would be Address Book and RETRO_DEVICE_ID_JOYPAD_B would be Date Book

Impossible to finish Graffiti app

Using Retroarch's build, it is impossible to go through the configuration process of the Graffiti app on palm OS 4. It has to do with the touchscreen sensitivity I suppose, as to navigation through the home screen without changing the page you'll have to move the joystick slowly.

Nit: .gitignore .pro.user

This is about as nitpicky as they come, so I apologize in advance. I've had issues loading the .pro file locally if I try to use the checked in .pro.user settings file. I have to wipe it out each time in order for things to run. It might be worthwhile to add the user settings to .gitignore. This will also make some of the commits less packed.

Non-commercial license

Hello guicrith,
i remember when you were working on PersianTree before it eventually became this, pretty nice progress so far ! However, one thing i did not notice was the license...
I won't go around the bushes, it's a major turn off for me. Such a license would also prevent it from being bundled with linux distributions.

I don't know your exact motives but just in case you did it in case someone else would take your work and profit off of it :
It's likely that such license is going to be ineffective at it.
The non-commercial license for Snes9x was ignored by most "emulation boxes" and you'll always have scums like DamonPS2 violating GPL anyway. (even though they could still make money off of it, but they don't want to share the source, violating the license still)
It's the reason why MAME dropped their old license, as it was never enforced and indeed some deemed it to be unenforceable. The moment they changed the license, they finally started to get credits for their work.

The only thing it will do is to punish legitimate users, which is why i would like you to reconsider the license. I would probably recommend the GPLv3+, since it requires modifications to be made public, along with other restrictions.

HotSync ID

Some apps require the HotSync ID (username, kind of) to be able to be registered successfully.

Game crash report

Describe the bug in detail and how to reproduce it.

  1. launch Koi-Koi (B&W icon)
  2. Press "start"

Crash

I suspect it needs Japanese ROM 3.1?

screen shot 2019-02-12 at 14 27 27

Upload your "userdata-en-m515.ram" if you can.

userdata-en-m515.ram.zip

List your OS, whether you are using the Qt or RetroArch build, the version of the build you are using,

  • RetroArch 1.7.6
  • Mu.exe in RamBuilder running in Wine/CrossOver

and the MD5 checksum of your "palmos41-en-m515.rom".

palmos41-en-m515.rom: 83cb1d1c76e568b916dc2e7c0bf669f6 (MD5)
bootloader-en-m515.rom: 9da101cd2317830649a31f8fa46debec (MD5)

Game

Define path and mount SD Card on Retroarch

Hi again! I'd like to know how can I activate the SD card and define an specific path for it, as I've seen many games that need to have stuff like level packs or similar in SD:\PALM\Programs\... and I'd like to point, in recalbox's case, to recalbox/share/roms/palm directory. That way users could just create a folder with the requited stuff inside of .../roms/palm/
Is that possible?

Resource directory not created

The required resource directory QDir::homePath() + "/Mu" does not seem to be automatically created on first run, instead it throws a generic "emulation error 4".

System info:

Ubuntu MATE x64 18.04
Qt Creator 4.7.0
Based on Qt 5.11.1 (GCC 5.3.1 20160406 (Red Hat 5.3.1-6), 64 bit)
Built on Jul 17 2018 04:23:40
From revision dedbb40f57

Where can I download these rom files?

Where can I download these files:
palmos40-en-m500.rom: f50e4d5e4d98dc831f2c34a9107651eb (MD5)
palmos41-en-m515.rom: 83cb1d1c76e568b916dc2e7c0bf669f6 (MD5)
palmos52-en-t3.rom: de46ec84d9aabf655eabdf9b00a3845d (MD5)
bootloader-dbvz.rom: 9da101cd2317830649a31f8fa46debec (MD5)

Don't know GitHub very well

Libretro build: error: duplicate ‘static’

Arch
gcc 7.3.1+20180406-1

[parker@inspiron15 build]$ git clone https://github.com/meepingsnesroms/libretro-palmm515emu
Cloning into 'libretro-palmm515emu'...
remote: Counting objects: 1417, done.
remote: Compressing objects: 100% (284/284), done.
remote: Total 1417 (delta 259), reused 210 (delta 99), pack-reused 1033
Receiving objects: 100% (1417/1417), 54.30 MiB | 3.01 MiB/s, done.
Resolving deltas: 100% (897/897), done.
[parker@inspiron15 build]$ cd libretro-palmm515emu/
[parker@inspiron15 libretro-palmm515emu]$ cd libretroBuildSystem/
[parker@inspiron15 libretroBuildSystem]$ make
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" cf71e93"\"  -DINLINE="static inline"  -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -olibretro.o libretro.c
In file included from libretro.c:10:0:
./libretro-common/include/retro_miscellaneous.h:52:1: error: duplicate ‘static’
 static INLINE void bits_or_bits(uint32_t *a, uint32_t *b, uint32_t count)
 ^~~~~~
./libretro-common/include/retro_miscellaneous.h:59:1: error: duplicate ‘static’
 static INLINE void bits_clear_bits(uint32_t *a, uint32_t *b, uint32_t count)
 ^~~~~~
./libretro-common/include/retro_miscellaneous.h:66:1: error: duplicate ‘static’
 static INLINE bool bits_any_set(uint32_t* ptr, uint32_t count)
 ^~~~~~
make: *** [Makefile.libretro:487: libretro.o] Error 1

Mu.exe map controls to keyboard

Currently cursor moves the focus around the buttons, and you have to click with the mouse or press space.

I have got around this by using external software to map key presses to mouse clicks, but it would be great if it was built-in.

RetroArch: accept/load PRC filetype

as title.

The way I would expect it working would be:

  1. start core
  2. look for palmos41-en-m515.rom in RetroArch system directory
  3. accept PRC file types, temporarily copy them into RAM and launch

It's odd, but given my experience with the PX68k core, RetroArch users do not seem to want persistent devices (even if that's how they are IRL) but rather a core as a device for running a game/app in demand.

Add runtime instructions to README

In one of the recent updates, it seems like the bootloader was added as a requirement for running the program. It might be useful to add those setup instructions (add files to whatever folder) to the main README.

Also, since the other issue about qmake was closed, it might also be helpful to update the "build without Qt Creator" instructions to use qmake CONFIG+=debug instead of just qmake.

RetroArch: look for palmos rom in system directory

as title

The way I would expect it working would be:

  1. start core
  2. look for palmos41-en-m515.rom in RetroArch system directory
  3. accept PRC file types, temporarily copy them into RAM and launch

It's odd, but given my experience with the PX68k core, RetroArch users do not seem to want persistent devices (even if that's how they are IRL) but rather a core as a device for running a game/app in demand.

Build error on libretro core

Arch
gcc 8.1.1+20180531-1

[parker@e55 build]$ git clone https://github.com/meepingsnesroms/libretro-palmm515emu
Cloning into 'libretro-palmm515emu'...
remote: Counting objects: 3613, done.
remote: Compressing objects: 100% (78/78), done.
remote: Total 3613 (delta 59), reused 84 (delta 42), pack-reused 3490
Receiving objects: 100% (3613/3613), 74.66 MiB | 12.67 MiB/s, done.
Resolving deltas: 100% (2472/2472), done.
[parker@e55 build]$ cd libretro-palmm515emu/libretroBuildSystem/
[parker@e55 libretroBuildSystem]$ make -j2
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -olibretro.o libretro.c
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/emulator.o ../src/emulator.c
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/memoryAccess.o ../src/memoryAccess.c
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.c: In function ‘ramRead8’:
../src/memoryAccess.h:31:90: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_8(segment, accessAddress, startAddress, mask)  segment[accessAddress - startAddress & mask]
../src/memoryAccess.c:15:57: note: in expansion of macro ‘BUFFER_READ_8’
 static inline uint8_t ramRead8(uint32_t address){return BUFFER_READ_8(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                         ^~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘ramRead16’:
../src/memoryAccess.h:32:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:16:59: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t ramRead16(uint32_t address){return BUFFER_READ_16(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:32:158: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:16:59: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t ramRead16(uint32_t address){return BUFFER_READ_16(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘ramRead32’:
../src/memoryAccess.h:33:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:17:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t ramRead32(uint32_t address){return BUFFER_READ_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:159: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:17:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t ramRead32(uint32_t address){return BUFFER_READ_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:216: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:17:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t ramRead32(uint32_t address){return BUFFER_READ_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:33:272: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 s, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])

../src/memoryAccess.c:17:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t ramRead32(uint32_t address){return BUFFER_READ_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘ramWrite8’:
../src/memoryAccess.h:34:98: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_8(segment, accessAddress, startAddress, mask, value)  segment[accessAddress - startAddress & mask] = value
../src/memoryAccess.c:18:63: note: in expansion of macro ‘BUFFER_WRITE_8’
 static inline void ramWrite8(uint32_t address, uint8_t value){BUFFER_WRITE_8(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                               ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘ramWrite16’:
../src/memoryAccess.h:35:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/memoryAccess.c:19:65: note: in expansion of macro ‘BUFFER_WRITE_16’
 static inline void ramWrite16(uint32_t address, uint16_t value){BUFFER_WRITE_16(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
../src/memoryAccess.h:35:173: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/memoryAccess.c:19:65: note: in expansion of macro ‘BUFFER_WRITE_16’
 static inline void ramWrite16(uint32_t address, uint16_t value){BUFFER_WRITE_16(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘ramWrite32’:
../src/memoryAccess.h:36:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/memoryAccess.c:20:65: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void ramWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:174: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/memoryAccess.c:20:65: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void ramWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:247: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 E_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)

../src/memoryAccess.c:20:65: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void ramWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:319: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 ddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)

../src/memoryAccess.c:20:65: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void ramWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmRam, address, chips[CHIP_D_RAM].start, chips[CHIP_D_RAM].mask, value);}
                                                                 ^~~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.c: In function ‘romRead8’:
../src/memoryAccess.h:31:90: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_8(segment, accessAddress, startAddress, mask)  segment[accessAddress - startAddress & mask]
../src/memoryAccess.c:23:57: note: in expansion of macro ‘BUFFER_READ_8’
 static inline uint8_t romRead8(uint32_t address){return BUFFER_READ_8(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                         ^~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘romRead16’:
../src/memoryAccess.h:32:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:24:59: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t romRead16(uint32_t address){return BUFFER_READ_16(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:32:158: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:24:59: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t romRead16(uint32_t address){return BUFFER_READ_16(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘romRead32’:
../src/memoryAccess.h:33:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:25:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t romRead32(uint32_t address){return BUFFER_READ_32(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:159: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:25:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t romRead32(uint32_t address){return BUFFER_READ_32(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:216: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:25:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t romRead32(uint32_t address){return BUFFER_READ_32(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:33:272: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 s, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])

../src/memoryAccess.c:25:59: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t romRead32(uint32_t address){return BUFFER_READ_32(palmRom, address, chips[CHIP_A_ROM].start, chips[CHIP_A_ROM].mask);}
                                                           ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.c: In function ‘sed1376Read8’:
../src/memoryAccess.h:31:90: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_8(segment, accessAddress, startAddress, mask)  segment[accessAddress - startAddress & mask]
../src/memoryAccess.c:36:14: note: in expansion of macro ‘BUFFER_READ_8’
       return BUFFER_READ_8(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘sed1376Read16’:
../src/memoryAccess.h:32:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:46:14: note: in expansion of macro ‘BUFFER_READ_16’
       return BUFFER_READ_16(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:32:158: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/memoryAccess.c:46:14: note: in expansion of macro ‘BUFFER_READ_16’
       return BUFFER_READ_16(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘sed1376Read32’:
../src/memoryAccess.h:33:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:56:14: note: in expansion of macro ‘BUFFER_READ_32’
       return BUFFER_READ_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:159: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:56:14: note: in expansion of macro ‘BUFFER_READ_32’
       return BUFFER_READ_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:216: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/memoryAccess.c:56:14: note: in expansion of macro ‘BUFFER_READ_32’
       return BUFFER_READ_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/memoryAccess.c:4:
../src/memoryAccess.h:33:272: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 s, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])

../src/memoryAccess.c:56:14: note: in expansion of macro ‘BUFFER_READ_32’
       return BUFFER_READ_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF);
              ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘sed1376Write8’:
../src/memoryAccess.h:34:98: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_8(segment, accessAddress, startAddress, mask, value)  segment[accessAddress - startAddress & mask] = value
../src/memoryAccess.c:64:7: note: in expansion of macro ‘BUFFER_WRITE_8’
       BUFFER_WRITE_8(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘sed1376Write16’:
../src/memoryAccess.h:35:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/memoryAccess.c:72:7: note: in expansion of macro ‘BUFFER_WRITE_16’
       BUFFER_WRITE_16(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
../src/memoryAccess.h:35:173: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/memoryAccess.c:72:7: note: in expansion of macro ‘BUFFER_WRITE_16’
       BUFFER_WRITE_16(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
../src/memoryAccess.c: In function ‘sed1376Write32’:
../src/memoryAccess.h:36:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/memoryAccess.c:80:7: note: in expansion of macro ‘BUFFER_WRITE_32’
       BUFFER_WRITE_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:174: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/memoryAccess.c:80:7: note: in expansion of macro ‘BUFFER_WRITE_32’
       BUFFER_WRITE_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:247: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 E_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)

../src/memoryAccess.c:80:7: note: in expansion of macro ‘BUFFER_WRITE_32’
       BUFFER_WRITE_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:319: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 ddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)

../src/memoryAccess.c:80:7: note: in expansion of macro ‘BUFFER_WRITE_32’
       BUFFER_WRITE_32(sed1376Framebuffer, address, SED1376_FB_OFFSET, 0xFFFFFFFF, value);
       ^~~~~~~~~~~~~~~
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/hardwareRegisters.o ../src/hardwareRegisters.c
In file included from ../src/emulator.h:13,
                 from ../src/hardwareRegisters.c:5:
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayRead8’:
../src/memoryAccess.h:31:90: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_8(segment, accessAddress, startAddress, mask)  segment[accessAddress - startAddress & mask]
../src/hardwareRegistersAccessors.c.h:14:67: note: in expansion of macro ‘BUFFER_READ_8’
 static inline uint8_t registerArrayRead8(uint32_t address){return BUFFER_READ_8(palmReg, address, 0, 0xFFF);}
                                                                   ^~~~~~~~~~~~~
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayRead16’:
../src/memoryAccess.h:32:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/hardwareRegistersAccessors.c.h:15:69: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t registerArrayRead16(uint32_t address){return BUFFER_READ_16(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/hardwareRegisters.c:5:
../src/memoryAccess.h:32:158: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_16(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 8 | segment[accessAddress - startAddress + 1 & mask])
../src/hardwareRegistersAccessors.c.h:15:69: note: in expansion of macro ‘BUFFER_READ_16’
 static inline uint16_t registerArrayRead16(uint32_t address){return BUFFER_READ_16(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayRead32’:
../src/memoryAccess.h:33:91: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/hardwareRegistersAccessors.c.h:16:69: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t registerArrayRead32(uint32_t address){return BUFFER_READ_32(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:159: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/hardwareRegistersAccessors.c.h:16:69: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t registerArrayRead32(uint32_t address){return BUFFER_READ_32(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
../src/memoryAccess.h:33:216: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/hardwareRegistersAccessors.c.h:16:69: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t registerArrayRead32(uint32_t address){return BUFFER_READ_32(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
In file included from ../src/emulator.h:13,
                 from ../src/hardwareRegisters.c:5:
../src/memoryAccess.h:33:272: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_READ_32(segment, accessAddress, startAddress, mask) (segment[accessAddress - startAddress & mask] << 24 | segment[accessAddress - startAddress + 1 & mask] << 16 | segment[accessAddress - startAddress + 2 & mask] << 8 | segment[accessAddress - startAddress + 3 & mask])
../src/hardwareRegistersAccessors.c.h:16:69: note: in expansion of macro ‘BUFFER_READ_32’
 static inline uint32_t registerArrayRead32(uint32_t address){return BUFFER_READ_32(palmReg, address, 0, 0xFFF);}
                                                                     ^~~~~~~~~~~~~~
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayWrite8’:
../src/memoryAccess.h:34:98: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_8(segment, accessAddress, startAddress, mask, value)  segment[accessAddress - startAddress & mask] = value
../src/hardwareRegistersAccessors.c.h:17:73: note: in expansion of macro ‘BUFFER_WRITE_8’
 static inline void registerArrayWrite8(uint32_t address, uint8_t value){BUFFER_WRITE_8(palmReg, address, 0, 0xFFF, value);}
                                                                         ^~~~~~~~~~~~~~
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayWrite16’:
../src/memoryAccess.h:35:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:18:75: note: in expansion of macro ‘BUFFER_WRITE_16’
 static inline void registerArrayWrite16(uint32_t address, uint16_t value){BUFFER_WRITE_16(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/memoryAccess.h:35:173: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_16(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 8, segment[accessAddress - startAddress + 1 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:18:75: note: in expansion of macro ‘BUFFER_WRITE_16’
 static inline void registerArrayWrite16(uint32_t address, uint16_t value){BUFFER_WRITE_16(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/hardwareRegistersAccessors.c.h: In function ‘registerArrayWrite32’:
../src/memoryAccess.h:36:99: warning: suggest parentheses around ‘-’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:19:75: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void registerArrayWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:174: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:19:75: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void registerArrayWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:247: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:19:75: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void registerArrayWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/memoryAccess.h:36:319: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
 #define BUFFER_WRITE_32(segment, accessAddress, startAddress, mask, value) (segment[accessAddress - startAddress & mask] = value >> 24, segment[accessAddress - startAddress + 1 & mask] = (value >> 16) & 0xFF, segment[accessAddress - startAddress + 2 & mask] = (value >> 8) & 0xFF, segment[accessAddress - startAddress + 3 & mask] = value & 0xFF)
../src/hardwareRegistersAccessors.c.h:19:75: note: in expansion of macro ‘BUFFER_WRITE_32’
 static inline void registerArrayWrite32(uint32_t address, uint32_t value){BUFFER_WRITE_32(palmReg, address, 0, 0xFFF, value);}
                                                                           ^~~~~~~~~~~~~~~
../src/hardwareRegisters.c: In function ‘printUnknownHwAccess’:
../src/hardwareRegisters.c:311:119: warning: suggest braces around empty body in an ‘else’ statement [-Wempty-body]
       debugLog("CPU read %d bits from register 0x%03X, PC 0x%08X.\n", size, address, m68k_get_reg(NULL, M68K_REG_PPC));
                                                                                                                       ^
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/sed1376.o ../src/sed1376.c
../src/sed1376.c: In function ‘sed1376GetRegister’:
../src/sed1376.c:113:109: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body]
       debugLog("SED1376 register read from 0x%02X, PC 0x%08X.\n", address, m68k_get_reg(NULL, M68K_REG_PPC));
                                                                                                             ^
../src/sed1376.c: In function ‘sed1376SetRegister’:
../src/sed1376.c:153:122: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body]
       debugLog("SED1376 register write 0x%02X to 0x%02X, PC 0x%08X.\n", value, address, m68k_get_reg(NULL, M68K_REG_PPC));
                                                                                                                          ^
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/ads7846.o ../src/ads7846.c
../src/ads7846.c: In function ‘ads7846ExchangeBit’:
../src/ads7846.c:48:12: warning: unused variable ‘differentialMode’ [-Wunused-variable]
       bool differentialMode = !(ads7846ControlByte & 0x04);
            ^~~~~~~~~~~~~~~~
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/sdcard.o ../src/sdcard.c
../src/sdcard.c: In function ‘sdCardLoadState’:
../src/sdcard.c:150:18: warning: variable ‘output’ set but not used [-Wunused-but-set-variable]
       struct mem output;
                  ^~~~~~
../src/sdcard.c:149:18: warning: variable ‘input’ set but not used [-Wunused-but-set-variable]
       struct mem input;
                  ^~~~~
../src/sdcard.c:148:18: warning: variable ‘patch’ set but not used [-Wunused-but-set-variable]
       struct mem patch;
                  ^~~~~
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/silkscreen.o ../src/silkscreen.c
cc -I./libretro-common/include -O2 -DNDEBUG -DGIT_VERSION=\"" f4873e0"\"   -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -c -o../src/68328Functions.o ../src/68328Functions.c
make: *** No rule to make target '../src/trapNumToName.o', needed by 'mu_libretro.so'.  Stop.
make: *** Waiting for unfinished jobs....

Won't build on Ubuntu Bionic

Two separate issues caused Qt studio to not be able to build:

  1. mainwindow.cpp#274 seems it should be qlonglong instead of uint64_t
  2. mainwindow.qrc should reference images/todo.png instead of images/toDo.png due to Linux case sensitivity

After I changed both of those, I was able to build just fine.

System info:

Ubuntu MATE x64 18.04
Qt Creator 4.7.0
Based on Qt 5.11.1 (GCC 5.3.1 20160406 (Red Hat 5.3.1-6), 64 bit)
Built on Jul 17 2018 04:23:40
From revision dedbb40f57

Non Qt-Creator build steps

It might be helpful to add the build steps for those people who don't want to install Qt-Creator in order to build from master. I'm not exactly proficient at this stuff, but I believe the steps are just:

cd qtBuildSystem/Mu
qmake
make

Addendum:
Might also be worthwhile to say the minimum Qt version that can build this project (or add code to support slightly older versions). e.g. qtstring.back() is only available in the most recent version. Before then, it's something like (size() - 1) or something. I only mention this because Ubuntu's newest officially supported version of Qt is 5.9.5, not 5.11.1.

multiple definition of `pxa260Framebuffer'

When compiling for Retroarch on Debian Bullseye, I get the following error:
** BUILDING mu_libretro.so FOR PLATFORM unix ** cc -fPIC -shared -Wl,--version-script=build/link.T -I./libretro-common/include -o mu_libretro.so ./libretro.o ./cursors.o ./../src/emulator.o ./../src/m5XXBus.o ./../src/dbvz.o ./../src/flx68000.o ./../src/sed1376.o ./../src/ads7846.o ./../src/pdiUsbD12.o ./../src/sdCard.o ./../src/silkscreen.o ./../src/audio/blip_buf.o ./../src/m68k/m68kops.o ./../src/m68k/m68kopnz.o ./../src/m68k/m68kopdm.o ./../src/m68k/m68kopac.o ./../src/m68k/m68kcpu.o ./../src/fileLauncher/launcher.o ./../src/pxa260/pxa260_DMA.o ./../src/pxa260/pxa260_DSP.o ./../src/pxa260/pxa260_GPIO.o ./../src/pxa260/pxa260_IC.o ./../src/pxa260/pxa260_LCD.o ./../src/pxa260/pxa260_PwrClk.o ./../src/pxa260/pxa260_RTC.o ./../src/pxa260/pxa260_TIMR.o ./../src/pxa260/pxa260_UART.o ./../src/pxa260/pxa260I2c.o ./../src/pxa260/pxa260Memctrl.o ./../src/pxa260/pxa260Timing.o ./../src/pxa260/pxa260Ssp.o ./../src/pxa260/pxa260Udc.o ./../src/pxa260/pxa260.o ./../src/armv5te/emuVarPool.o ./../src/armv5te/mem.o ./../src/armv5te/mmu.o ./../src/tps65010.o ./../src/tsc2101.o ./../src/w86l488.o ./../src/armv5te/os/os-linux.o ./../src/armv5te/asmcode.o ./libretro-common/compat/compat_strl.o ./libretro-common/compat/compat_posix_string.o ./libretro-common/compat/fopen_utf8.o ./libretro-common/encodings/encoding_utf.o ./libretro-common/memmap/memmap.o ./libretro-common/streams/file_stream.o ./libretro-common/string/stdstring.o ./libretro-common/vfs/vfs_implementation.o ./../src/armv5te/arm_interpreter.o ./../src/armv5te/thumb_interpreter.o ./../src/armv5te/cpu.o ./../src/armv5te/coproc.o -lm /usr/bin/ld: ./../src/pxa260/pxa260.o:(.bss+0x128): multiple definition of pxa260Framebuffer'; ./../src/pxa260/pxa260_LCD.o:(.bss+0x0): first defined here
collect2: error: ld returned 1 exit status
`

Build Issue (sdcard.h)

In 037cca5 the name of sdcard.h and sdcard.c got changed to sdCard.h and sdCard.c respectively, but the file names were not updated accordingly. This causes issues when building on linux.

Installing PRC file.

Hey guys,

So I've compiled Mu with QT interface on macOS.
The system is running fine.

Screenshot 2019-05-05 at 19 15 38

Now I need to install PRC file to see how it works.
As I understand all I should do is click this button:
Screenshot 2019-05-05 at 19 16 24
Then select a PRC file and it's done, or am I missing something?
I do not see this app in the apps menu after this process. Actually nothing is happening after that...

I'm new into PalmOS, I just need it to check how the app works.

PRC file:
mmcd-1.5d.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.