twinaphex/genesis-next — comment on commit 62ee45296bd1e23ca9dede6461caa59d0d0f7357
File:  line 0
By ekeeke:

1 - well, your answer still doesn't make clear about what exactly prevents you from unzipping file in load_archive when it's a ZIP file, just like I do in the GX/Win32 port and why you absolutely need to do this in forehand. load_rom is supposed to load the ROM from file, it doesn't initialize anything apart from sytem_hw variable so you can call it anywhere in your code before system_init.

Just to be clear, I am not trying to belittle your solution which is quite acceptable anyway, just trying to understand where my initial solution, which I thought would be portable in most situations, failed for you and maybe find an alternate solution to your problem. Also I cannot standardize ZIP loading routine as some ports might not want to support zipped ROM or not have access to zlib and this should remain port specific imo. Nothing prevent you to use the same routines as the ones used in gx/fileio.c or win/fileio.c, both are relying on zlib which is a pretty standard library anyway (win port's method uses unzip.c as well btw).

2. my question was more about WHICH source files in my core required such defines, I cannot browse your whole code and only have seen the few last commits where some of these were added. If you could give me in detail the impacted files and explains which #ifdef is needed and why, this would help me figuring the most portable solution.