Commit graph

1123 commits

Author SHA1 Message Date
Wunkolo
d9afb12daf Fix MacOS build 2023-07-22 13:16:23 -07:00
Wunkolo
b048d4dd6e Add SDL_Window to initGraphicsContext prototype
This value is needed for vulkan to properly allocate a surface, and would benefit OpenGL to move more of its initialization code into here rather than in `emulator.cpp`.
2023-07-22 13:16:23 -07:00
Wunkolo
870b6a21bf Add initial vulkan instance creation
Headlessly creates a new vulkan instance, with conditional MacOS
support, and enables the `VK_EXT_debug_utils` instance-extension with a
debug-messenger to hook onto validation layer messages.
2023-07-22 13:16:23 -07:00
Wunkolo
d2241a25bc Stub Vulkan backend support
A lot of the architecture of the emulator here does not allow for vulkan
to initialize easily since it involves a bit of data to be exchanged
between SDL and Vulkan. This commit just adds the foundational linkage
and library code for vulkan support.
2023-07-22 13:16:23 -07:00
wheremyfoodat
c98e5fb631
Merge pull request #132 from wheremyfoodat/sw-boilerplate
SW renderer infrastructure
2023-07-22 23:13:19 +03:00
wheremyfoodat
311d69fd2d Always build glad 2023-07-22 22:15:44 +03:00
wheremyfoodat
9da11b95d9 Add glm submodule 2023-07-22 21:57:23 +03:00
wheremyfoodat
ae4a4dfc29 Hook up sw rendering backend 2023-07-22 20:47:19 +03:00
wheremyfoodat
f328200c65 Add empty sw renderer class 2023-07-22 20:24:49 +03:00
wheremyfoodat
3b067a0eed Merge branch 'master' into ir 2023-07-21 15:45:04 +03:00
wheremyfoodat
5dfc17ed18
Merge pull request #131 from wheremyfoodat/cheats
More AR stuff
2023-07-21 15:39:57 +03:00
wheremyfoodat
d470a8c8d3 Merge branch 'master' into ir 2023-07-21 15:19:57 +03:00
wheremyfoodat
5d8f75a385 Format 2023-07-21 15:12:40 +03:00
wheremyfoodat
0588b99674 [ActionReplay] More conditional ops 2023-07-21 14:49:04 +03:00
wheremyfoodat
52314c188c
Merge pull request #130 from wheremyfoodat/cheats
More cheating
2023-07-21 03:56:30 +03:00
wheremyfoodat
4a45599303 [ActionReplay] Add HID stuff 2023-07-21 03:35:22 +03:00
wheremyfoodat
d007b2d780 Emulator cleanup, add AR conditionals 2023-07-21 00:55:08 +03:00
wheremyfoodat
6dad0f05d1
Merge pull request #129 from wheremyfoodat/cheats
Add preliminary cheat support
2023-07-20 16:28:22 +03:00
wheremyfoodat
08596c1a24 [AR] More opcodes 2023-07-20 16:10:32 +03:00
wheremyfoodat
fbcb7cee42
Merge pull request #128 from GPUCode/span-across
texture: Use spans
2023-07-20 16:10:00 +03:00
GPUCode
a019d98af9 texture: Use spans 2023-07-20 15:43:24 +03:00
wheremyfoodat
8e45b8c324 [ActionReplay] Add 16-bit writes 2023-07-20 14:01:47 +03:00
wheremyfoodat
97f8ea6cfd Get our first AR code running 2023-07-20 13:50:32 +03:00
wheremyfoodat
ae69c8f8c4 [Cheats] Split gateway and AR 2023-07-19 21:09:44 +03:00
wheremyfoodat
0904638df0 [Cheats] Add boilerplate 2023-07-19 20:51:45 +03:00
wheremyfoodat
5b4f6ef46c
Merge pull request #120 from Wunkolo/renderer-null
Add a `null` rendering backend
2023-07-18 23:26:52 +03:00
wheremyfoodat
c339c7d1c5 Bonk 2023-07-18 23:11:20 +03:00
wheremyfoodat
31d1c6ff3f Bonk people who select Vulkan as the renderer 2023-07-18 22:33:59 +03:00
wheremyfoodat
6860ccc396 Dummy-proof renderer config 2023-07-18 22:30:58 +03:00
wheremyfoodat
77b0382d0c Cleanup, C string -> std::string 2023-07-18 22:23:28 +03:00
Wunkolo
19a77c2a85 Add missing algorithm header 2023-07-18 10:24:06 -07:00
Wunkolo
0b60cf6901 Migrate RenderType string functions to static Renderer functions
Also fix some IWYU build errors
2023-07-18 10:02:07 -07:00
wheremyfoodat
525c7ddba7
Merge pull request #122 from caldog20/mac-app-bundle
Mac App Bundling
2023-07-18 16:27:47 +03:00
wheremyfoodat
453fec1203
Update MacOS_Build.yml 2023-07-18 16:27:01 +03:00
Caleb Yates
601098b413 Fix icon resolutions 2023-07-17 21:03:53 -05:00
Caleb Yates
8e7d776b79 Test mac app bundling
ci

test CI 2

Final commit
2023-07-17 20:22:53 -05:00
Wunkolo
528ed510c2 Add string-based renderer backend configuration
Rather than using integer-indices, just use plaintext case-insensitive
names and leave the actual enum indexes as an implementation detail.
2023-07-17 18:02:01 -07:00
wheremyfoodat
ed1b0704d6
Merge pull request #111 from wheremyfoodat/dynapand
Filesystem bonking
2023-07-18 01:26:17 +03:00
Wunkolo
2c57936c50 Fix EmulatorConfig initialization order
`config` was being consumed much too early before it has a chance to
call `load`. This caused GPU to read weird uninitialized data, and then
`load` called, and then further initialization to occur based on default
data and the data inside of `config.toml`. `EmulatorConfig` needs to be
loaded in first before any sort of initialization happens, by adding a
new constructor so that it can be initialized sooner.
2023-07-17 10:23:19 -07:00
Wunkolo
ceff20f57f Add configurable Renderer backend
There are still some initialization errors to work through, such as
config not being initialized properly by the time GPU tries to utilize
it too. Also some life-time issues. But manually forcing it to use the
Null backnd successfully works and allows games to be "played"
headlessly.
2023-07-17 10:13:34 -07:00
Wunkolo
1becbef811 Add Null rendering backend
Doesn't implement any functions, currently not selectable or
configurable
2023-07-17 09:34:10 -07:00
Wunkolo
b10e69de0e Add virtual deconstructor override
Virtual classes need to override the base-type deconstructor so that they are proper called when referred to by their base-type.
2023-07-17 09:30:12 -07:00
wheremyfoodat
cdf01aaf43 [FS::Directory] Better attribute handling 2023-07-17 03:22:13 +03:00
wheremyfoodat
22bfb092b8 Fix 8.3 conversion derp 2023-07-17 03:11:21 +03:00
wheremyfoodat
f08fe10862 [FS::Dir] Fix command response headers 2023-07-17 02:58:55 +03:00
wheremyfoodat
50742f7bb1 [FS] Proper 8.3 filename conversion hopefully 2023-07-17 02:54:05 +03:00
wheremyfoodat
50bf9bf7da
Merge pull request #118 from Wunkolo/embedded-resources
Migrate OpenGL string-literals to embedded files
2023-07-17 00:30:59 +03:00
wheremyfoodat
f956a3eb7a Add glsl files to source_group 2023-07-16 22:01:14 +03:00
wheremyfoodat
826f0ac039 Fix up comments and readme 2023-07-16 19:23:42 +03:00
Wunkolo
413a03c8a3 Use https protocol for cmrc submodule 2023-07-15 19:21:26 -07:00