Skip to content
Permalink
Browse files

project: back out from AVX requirement to SSE3

  • Loading branch information
JaCzekanski committed Aug 17, 2019
1 parent 249e996 commit e9d17e30536c5e507820aa1f31de81ddff179bfa
@@ -49,7 +49,7 @@ Currently audio is hard synced to NTSC (60Hz) (**running PAL games will make aud
## Requirements
- OS: Windows 7 or later, macOS 10.13 or later, Linux
- GPU: Graphics card supporting **OpenGL 3.2**
- CPU: [AVX compatible x64 processor](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#CPUs_with_AVX) or any x86 processor
- CPU: [SSE3 compatible (CPUs after 2004)](https://en.wikipedia.org/wiki/SSE3#CPUs_with_SSE3) x64 or x86 processor

### Notes
Avocado focuses on supporting relatively modern hardware (2010 and forwards) and non-legacy OSes.
@@ -14,7 +14,7 @@ android {
versionName "0.1.0"
externalNativeBuild {
ndkBuild {
arguments 'PM5_CONFIG=release_x64', '-j4'
arguments 'PM5_CONFIG=release_arm', '-j4'
targets "avocado"
}
}
@@ -1,13 +1,16 @@
include "premake/tools.lua"
require "./premake/androidmk"

-- Windows support 32bit and 64bit versions
-- Linux - as well
-- MacOS is 64bit only
-- Android has ARM architecture - Android studio decides on ABI
-- Web - single architecture

workspace "Avocado"
configurations { "debug", "release" }
platforms {"x86", "x64"}
startproject "avocado"
defaultplatform "x86"

ndkabi "arm64-v8a armeabi-v7a"
ndkstl "c++_static"
ndkplatform "android-24"

@@ -58,21 +61,38 @@ filter {}
defines { 'BUILD_ARCH="%{cfg.system}"' }
exceptionhandling "On"
rtti "On"
warnings "Extra"

filter "platforms:x86"
architecture "x32"
filter "system:windows"
platforms {"x86", "x64"}
defaultplatform "x64"

filter "platforms:x64"
architecture "x64"
vectorextensions "AVX"
filter "system:linux"
platforms {"x86", "x64"}
defaultplatform "x64"

filter "system:macosx"
platforms {"x64"}
defaultplatform "x64"
xcodebuildsettings {
['ALWAYS_SEARCH_USER_PATHS'] = {'YES'}
}

filter "system:android"
platforms {"arm"}
defines { "USE_OPENGLES"}

filter "platforms:x86"
architecture "x32"
vectorextensions "SSE3"

filter "platforms:x64"
architecture "x64"
vectorextensions "SSE3"

filter "platforms:arm"
architecture "arm"
vectorextensions "NEON"

filter "kind:*App"
targetdir "build/%{cfg.buildcfg}_%{cfg.platform}"
@@ -93,26 +113,14 @@ filter "configurations:Release"
flags { "MultiProcessorCompile" }
optimize "Full"

filter {"configurations:Release", "system:windows or system:macosx"}
filter {"configurations:Release"}
if os.getenv("CI") == true then
flags { "LinkTimeOptimization" }
end

filter "action:vs*"
defines "_CRT_SECURE_NO_WARNINGS"

filter {"action:vs*", "configurations:Release"}
staticruntime "On"
flags {
"LinkTimeOptimization",
}

filter "action:gmake"
buildoptions {
"-Wall",
"-Wextra",
}

include "premake/chdr.lua"
include "premake/flac.lua"
include "premake/glad.lua"
@@ -153,6 +153,7 @@ uint8_t MemoryCard::handleWrite(uint8_t byte) {
}

uint8_t MemoryCard::handleId(uint8_t byte) {
(void)byte;
if (verbose >= 1) printf("[MEMCARD] Unsupported ID command\n");
command = Command::None;
return 0xff;
@@ -12,7 +12,7 @@ void DMAChannel::step() {}

uint32_t DMAChannel::readDevice() { return 0; }

void DMAChannel::writeDevice(uint32_t data) {}
void DMAChannel::writeDevice(uint32_t data) { (void)data; }

const char* DMAChannel::name() {
switch (channel) {
@@ -4,7 +4,10 @@ Expansion2::Expansion2() { reset(); }

void Expansion2::reset() { post = 0; }

uint8_t Expansion2::read(uint32_t address) { return 0; }
uint8_t Expansion2::read(uint32_t address) {
(void)address;
return 0;
}

void Expansion2::write(uint32_t address, uint8_t data) {
if (address == 0x41) {

0 comments on commit e9d17e3

Please sign in to comment.
You can’t perform that action at this time.