Commit Graph

189 Commits

Author SHA1 Message Date
Helloyunho
eab80176b8 Merge https://github.com/isledecomp/isle-portable 2025-07-06 14:20:19 +09:00
Anders Jenbo
004b88e02e
Start virtual mouse at center of screen (#532) 2025-07-06 07:06:14 +02:00
Helloyunho
9c60d84136 Merge https://github.com/isledecomp/isle-portable 2025-07-06 11:13:22 +09:00
Helloyunho
80514e2af7
Support gamepad (#527) 2025-07-05 21:27:24 +02:00
Helloyunho
a49d60595d chore: match with upstream 2025-07-05 12:14:42 +09:00
Helloyunho
4875cec9ec 🚸 chore: draw cursor by default 2025-07-05 11:11:44 +09:00
Helloyunho
527d5fa9f9 🚨 fix: formatting error 2025-07-05 11:05:26 +09:00
Helloyunho
2c313f3acc 🧑‍💻 chore: improve reusability 2025-07-05 11:03:40 +09:00
Helloyunho
6770db9c8b 🚸 chore: change default cd path so user can easily copy the assets to xbox 2025-07-05 10:36:50 +09:00
Helloyunho
eb54cec31c Merge https://github.com/isledecomp/isle-portable 2025-07-05 10:25:15 +09:00
Anders Jenbo
af045eefed
Add fake mosaic to config tool (#522) 2025-07-04 17:41:18 +02:00
Helloyunho
6d9c255bff Merge https://github.com/isledecomp/isle-portable 2025-07-04 14:59:56 +09:00
Anders Jenbo
92a96282b3
Fix tabbign in and out of fullscreen (#514) 2025-07-04 04:48:09 +02:00
Christian Semmler
f1b22ee025
Allow Web port to be playable in Firefox Private (#513) 2025-07-04 01:28:45 +02:00
Helloyunho
631252b62d 🔥 chore: dont need you 2025-07-04 01:08:57 +09:00
Helloyunho
1d2b138883 Merge https://github.com/isledecomp/isle-portable 2025-07-04 01:07:37 +09:00
Helloyunho
0191be7461
Make draw cursor feature work for modern platforms (#480) 2025-07-03 18:05:46 +02:00
Helloyunho
3df0496c6d 🔧 feat: add mouse sensitivity config 2025-07-03 23:54:16 +09:00
Helloyunho
b4b9f6ccb5 Merge https://github.com/isledecomp/isle-portable 2025-07-03 17:13:29 +09:00
Christian Semmler
be73b40ae8
Add monkey patch to Emscripten to disable OffscreenCanvas at runtime (#493)
* Add runtime option to disable OffscreenCanvas in web port

* Remove old patch
2025-07-03 02:10:02 +00:00
Christian Semmler
10b6d28cf8
Revert "Add resizable property to window creation (#477)"
This reverts commit 0e70735549.
2025-07-02 08:06:09 -07:00
Helloyunho
df66bc07e9 Merge https://github.com/isledecomp/isle-portable 2025-07-02 22:41:47 +09:00
VoxelTek
0e70735549
Add resizable property to window creation (#477)
Add resizable property to window creation. Allows Close button to be present in some cases where it did not appear.
2025-07-02 15:16:54 +02:00
Helloyunho
4a1a3eef52 🎨 fix: formatting 2025-07-02 21:35:07 +09:00
Helloyunho
285f6fbe23 🩹 fix: remap joystick 2025-07-02 21:33:23 +09:00
Helloyunho
2782e0a1f2 feat: forcibly draw cursor and map right joystick to cursor 2025-07-02 21:15:11 +09:00
Helloyunho
6a4c07c79a 🩹 fix: doesnt compile 2025-07-02 19:37:10 +09:00
Helloyunho
45c9fadc7b ⚗️ chore: try to make less modification from upstream 2025-07-01 21:47:53 +09:00
Helloyunho
1bcfcf7e82 Merge https://github.com/isledecomp/isle-portable 2025-07-01 17:37:22 +09:00
Joshua Peisach
1ff768935e
3DS Port (#450)
* [WIP] 3ds port

Recommit of everything after the 2d renderer merge

* VERY AWESOME FEATURE FRFR

* Stopped CPU suicide and app crashing for now

* put in Texture3DS function thing

* Fix clear color

* Implement 2D rendering via Citro3D

* Set 3dsx smdh metadata

* Render world content, sort of

* Push mesh dynamically

* Remove Citro3D init hacks

* Clean up Citro3D implementation

* Try to upload meshes and convert matricies

* Fix 3D rendering

* Apply optimizations

* Implement lighting

* Set 3dsx smdh metadata

* Revert "Apply optimizations"

This reverts commit 6660082fef.

* Apply optimizations

* Added a cleaner icon (#4)

* Fix pure buffer clear frames (#9)

* Disable OpenGL on 3DS (#10)

* Fix tiled textures and improve UI image quality (#11)

* Create 3DS default config overrides

* 3ds: implement apt hooks

* remove unused import

* Apply suggestions from code review

Co-authored-by: Christian Semmler <mail@csemmler.com>
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Update miniwin/src/d3drm/backends/citro3d/renderer.cpp

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Separate 3DS apt hook code + move cmake 3ds into ISLE_BUILD_APP

* miniwin: use citro3dd if debugging

* Optimize texture encoding (#12)

* Cleanup

* Set correct mipmap level for UI textures (#13)

* cpack: include the .3dsx

* Add 3DS CI

* Fix CI

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* syntax

* Refactor c3d renderer (#14)

* Refactor c3d renderer

* format

* Apply suggestions from code review

Co-authored-by: Anders Jenbo <anders@jenbo.dk>

---------

Co-authored-by: Anders Jenbo <anders@jenbo.dk>

* n3ds: just distribute the .3dsx

* upload 3dsx

* Skip uploading 3DS artifacts

* Update ci.yml

* Update ci.yml

* Remove extraneous ifdef

---------

Co-authored-by: MaxBrick <maximusbrick@gmail.com>
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
Co-authored-by: Steven <139715581+StevenSYS@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
2025-07-01 02:43:10 +00:00
Helloyunho
2f3b6af4ac ⚗️ feat: add button support 2025-07-01 01:20:02 +09:00
Helloyunho
43dee994b6 🩹 fix: remove opengl stuff 2025-06-30 23:35:05 +09:00
Helloyunho
f375e7954e Merge https://github.com/isledecomp/isle-portable 2025-06-30 17:06:06 +09:00
Helloyunho
3e4c46a88b feat: got the audio working 2025-06-30 13:13:55 +09:00
David Gow
e87184b502
Fix the OpenGL backends on non-glx Linux platforms (and remove GLEW dependency) (#446)
* Work around issues with depth-buffer size on EGL-based platforms

The OpenGL 1.1 and OpenGL ES 2.0 backends can break on EGL-based platforms,
such as Wayland, or X11 with SDL_VIDEO_FORCE_EGL=1. One of the reasons for
this (the other being glew on the GL1.1 backend) is that SDL/egl get very
confused by the way we set OpenGL attributes, particularly SDL_GL_DEPTH_SIZE,
resulting in SDL_GL_CreateContext() failing with EGL_BAD_MATCH.

The exact cause of this is unknown, but it seems to be a combination of:
- SDL_GL_SetAttribute() is supposed to be called _before_ the window is
  created, and we're calling it afterward.
- Creating several test windows during the enumeration process, mixing
  and matching between OpenGL and OpenGL ES profiles.

The "most correct" solution is probably to delay creating the game window
until the backend creation process, rather than before the enumeration
occurs. But that's a real refactor, which could cause other issues.

Instead, set the 24-bit bit depth (which we've hardcoded anyway) before
creating the window, and use SDL_GL_ResetAttributes() when creating backends.

This seems to work here in all of the cases I was able to try (modulo the GLEW
dependency, which is removed in the next patch).

* miniwin: Remove GLEW dependency for OpenGL 1.1

GLEW normally backs directly onto glXGetProcAddress on Linux, which is broken
on non-GLX setups, such as Wayland (but also X11 with EGL, and presumably KMSDRM).

Replace it with manual calls to SDL_GL_GetProcAddress() for the VBO path.

Note, however, that SDL_opengl.h includes "windows.h", so conflicts with the
miniwin implementation, which breaks builds on windows.

In order to work around this, we do what the Direct3D9 implementation does and
push all of the OpenGL calls to a separate file, actual.cpp.

Going forward, it may make sense to load _all_ OpenGL entry points via SDL,
which would allow us to avoid linking directly with libGL/libOpenGL, and
therefore eliminate the separate build dependency altogether, as well as
allowing more runtime configurability as to the OpenGL library to load.

(But that's definitely a bit uglier, and also useful very rarely.)
2025-06-29 17:47:09 +02:00
Christian Semmler
020969c483
Add transition type to ini (#441) 2025-06-29 02:49:46 +02:00
Christian Semmler
a987595e1e
1.0 compatibility (#434)
* Make Infocenter compatible with 1.0 versions

* Fix

* Emscripten patch

* Fix

* Fix Emscripten patch

* Window title

* Naming

* Don't exit car build automatically in 1.0

* Disable character selection by clicking icon in 1.0

* Remove obsolete includes
2025-06-27 02:30:24 +02:00
Carson
7797729a3f
Add option to remove startup delay (#395)
* Add startup delay option

* Remove build option

* Add comment back
2025-06-25 20:27:53 -07:00
Anders Jenbo
b65284a7a0
Move 2D drawing and upscaling to the renderer (#348) 2025-06-25 19:45:26 +02:00
Christian Semmler
87b4c0412e
Enhance compatibility of FetchFS (#424) 2025-06-24 22:03:54 +00:00
Christian Semmler
822a6a338c
Fix debug window 2025-06-24 09:23:32 -07:00
Danct12
3698f4fb0c
Bump version for SDL_SCALEMODE_PIXELART to 3.3.0 (#403) 2025-06-22 17:54:35 +00:00
Christian Semmler
5a756f033b
Set UseJoystick to true by default (#397) 2025-06-22 18:49:06 +02:00
Christian Semmler
92e0cb0845
Fix JoystickIndex ini default (#400) 2025-06-22 18:34:05 +02:00
Anders Jenbo
3678c97ec3
Allow for building on slightly older SDL3 versions (#394) 2025-06-22 03:29:37 +02:00
Christian Semmler
c2b8abea36
Fix Windows file finding (#369) 2025-06-21 18:06:08 +02:00
Steven
ed71ac8ec2
Added in game fullscreen toggling (#358) 2025-06-21 07:09:33 -07:00
Anders Jenbo
922794e7ea
Fix loading files from CD or HD (#357) 2025-06-21 15:19:25 +02:00
Christian Semmler
48fd42ea36
Check for files (#352)
* Check for files

* Fix
2025-06-21 00:45:21 +02:00
Christian Semmler
da825d42d4
Fix debug window 2025-06-17 10:40:25 -07:00