Commit graph

57 commits

Author SHA1 Message Date
sergystepanov
817a19c757 Fix the circle-pad's roundness 2025-05-16 12:15:37 +03:00
Sergey Stepanov
6de1828ffe Wait user click when autoplay fails 2024-11-29 14:51:33 +03:00
Sergey Stepanov
7ee98c1b03 Add keyboard and mouse support
Keyboard and mouse controls will now work if you use the kbMouseSupport parameter in the config for Libretro cores. Be aware that capturing mouse and keyboard controls properly is only possible in fullscreen mode.

Note: In the case of DOSBox, a virtual filesystem handler is not yet implemented, thus each game state will be shared between all rooms (DOS game instances) of CloudRetro.
2024-08-02 11:04:44 +03:00
Sergey Stepanov
d922e58278 Fix UI 2024-04-22 11:43:38 +03:00
Sergey Stepanov
22d1bd7620 Add screen component 2024-04-07 00:20:47 +03:00
Sergey Stepanov
a349fdd0cf Add 'force full-screen' option 2024-03-14 12:24:39 +03:00
Sergey Stepanov
4fc53e7220 Update options UI 2024-03-14 12:24:39 +03:00
Sergey Stepanov
c699455b58
Hide video element controls in fullscreen 2024-02-25 12:51:37 +03:00
Sergey Stepanov
a77069a634
Add L2, R2, L3, R3 mappings to keyboard 2023-11-26 22:39:43 +03:00
Sergey Stepanov
2e91feb861 Add initial automatic aspect ratio change
Depending on the configuration param coreAspectRatio, video streams may have automatic aspect ratio correction in the browser with the value provided by the cores themselves.
2023-11-03 01:12:22 +03:00
Sergey Stepanov
992b6e06da Hide sys info in the frontend 2023-09-16 20:12:24 +03:00
Sergey Stepanov
c063dd92c6 Remove unused CSS rules 2023-06-16 14:12:41 +03:00
Sergey Stepanov
6106eee97e Update game list module 2023-06-16 14:12:41 +03:00
Sergey Stepanov
2e1c837643 Show systems in the interface 2023-06-16 14:12:41 +03:00
Sergey Stepanov
d985440930
Center menu item 2023-05-12 21:20:08 +03:00
Sergey Stepanov
3815e18027
Remove the hack involving the /static route 2023-05-03 11:11:08 +03:00
Sergey Stepanov
f7d8a5dc50
Revert opts z-index 2023-04-27 16:27:05 +03:00
Sergey Stepanov
ed21e32b1f
Speedup item pick 2023-04-27 16:15:09 +03:00
Sergey Stepanov
e50dc102bb
Make game pick time consistent 2023-04-27 14:49:54 +03:00
Sergey Stepanov
30584b3faa
Make game picking less ugly 2023-04-27 14:26:16 +03:00
Sergey Stepanov
0c532a7f93
Fix moving settings 2023-04-27 13:31:17 +03:00
Sergey Stepanov
e17a358ade
Fix circle pad layering text blur 2023-04-27 13:06:43 +03:00
Sergey Stepanov
bb9f904104
Fix menu select side blur 2023-04-27 13:05:12 +03:00
Sergey Stepanov
40bd57c9a0
Remove not needed browser prefixes 2023-04-27 12:28:28 +03:00
Sergey Stepanov
ea3263ca6c
Remove unselected 2023-04-27 12:24:07 +03:00
Sergey Stepanov
494979cf38
Optimize images 2023-04-26 20:08:20 +03:00
Sergey Stepanov
3bd32715cb
Remove unused fonts 2023-04-23 19:55:39 +03:00
Sergey Stepanov
3c2c24038d
Hack 2023-03-29 13:03:31 +03:00
Sergey Stepanov
be0e00c7bf
Use display: none in the hide function, so it won't take any space 2022-04-18 22:47:35 +03:00
Sergey Stepanov
ed60ccf41e
Fix visibility of the help overlay 2022-04-18 19:13:26 +03:00
Sergey Stepanov
63d8a0354c
Remove unused CSS in the worker list element 2022-04-09 10:46:10 +03:00
Sergey Stepanov
fac6cc4495
Generate xIds on the worker's side 2022-04-09 10:27:04 +03:00
Sergey Stepanov
c190177955
Show active workers in the debug mode 2022-04-08 20:11:28 +03:00
sergystepanov
9ad3c98a7d
Rework worker selection feature (#365)
We add a new option for manual worker or machine (server with multiple workers) select, depending on the new coordinator option `coordinator.debug` which by default allows machine selection.
2022-04-07 21:04:30 +03:00
sergystepanov
1271aa8438
Game recording support (#356)
This feature adds the ability to record game sessions as raw a/v media files.
2021-12-04 14:20:38 +03:00
Sergey Stepanov
b916b0bf19
Add RTT stats 2021-09-02 23:58:05 +03:00
Sergey Stepanov
9289d9390b
Update stats module 2021-08-28 15:06:51 +03:00
sergystepanov
ff562503f1
Delete not used font-awesome.css 2021-07-30 12:22:59 +03:00
sergystepanov
3abb1d4818
Use orientation-based video / canvas stretching (#335) 2021-07-28 02:13:03 +03:00
sergystepanov
30d104ee98
Add version info into the apps (#330)
Both worker and coordinator display version number in the console during startup. Coordinator displays its version number in the top right corner of the index.html page.
2021-07-16 18:13:20 +03:00
sergystepanov
7ebd945344
Remove jQuery (#299)
* Remove jQuery

* Remove browser (vendor) prefixes for some CSS properties

* Use simple device orientation test

* Realign D-pad pointers

* Make GameBoy text unselectable

* Cleanup console.log

* Keep 90% size on mobile browsers due to gh-ribbon overlap

* Remove legacy `unselectable="on"` attributes

* Align UI buttons

* Remove not used UI elements

* Change Options button

* Don't show player change message when not in a game

* Add click/touch handler for circle-pad
2021-03-26 11:07:49 +03:00
Sergey Stepanov
c37c2c3004
Fix D-pad key and overlay 2021-02-20 00:12:05 +03:00
sergystepanov
92d0dd76f4
Refactor input for safe concurrency (#278)
* Extract input stuff

* Move d-pad option into the main screen

* Add mutex lock on the whole input user sessions struct
2021-02-19 20:33:58 +03:00
sergystepanov
816b210150
Client game screen configuration support (#269)
* Move game screen to a separate [stream] module

* Add a simple canvas video mirror for post-processing

* Add video mirroring to the options
2021-01-25 12:58:05 +03:00
Sergey Stepanov
f7152c7d21
Fix control buttons width 2021-01-18 22:49:47 +03:00
sergystepanov
8c55c6e142
Fix game sharing (#240)
Call save on the frontend and properly handle cloud save on the backend
2020-10-19 21:26:32 +08:00
giongto35
7b736d455e
Merge Pr/173 with master (#218)
* Add the initial support for settings

* Rearrange init order for the settings and log modules

* Add import settings function

* Add initial settings display panel

* Add settings controls

* Add settings controls handlers

* Add garbage gui auto-builder for settings

* Add some custom binding handlers for settings

* Add super ineffective ¯\_(ツ)_/¯ keyboard bindings remap function

* Migrate keyboard to codes instead deprecated keyCodes

* Abort key remap on Esc

Co-authored-by: Sergey Stepanov <sergystepanov@gmail.com>
2020-07-04 04:24:13 +08:00
sergystepanov
36894ad730
Swap the A/B buttons (#209) 2020-06-25 23:06:25 +08:00
88hcsif
091b086bcb
N64 Support (#195)
* Allow HTTP access to Raspberry Pi over local network
Lower audio buffer maximum theoretical size to get the worker code to compile on Raspberry Pi

* Add https port flag to run https worker and coordinator on the same machine
Add https chain and key flags to allow to use an existing certificate and bypass letsencrypt
Note the ping address resolution is still broken with this configuration

* Add option to define a ping server in the coordinator
This is useful when it is not predicatable what address and port the worker will be runnning at
This only works when there is a single worker

* Free temporarily allocated CStrings
Store constant CString

* Only load core once and unload it when done

* Add Nintendo 64 support!
Disclaimer: only tested with Mupen64plus and Mupen64plusNext on Raspberry Pi.
It probably needs more work to run on every system and with other OpenGL libretro libraries.
Input controls are hacked together, it really needs analog stick and remapping support to play in a nicer way.
I am worried there might be a memory leak when unloading Mupen64plus but this needs further investigation.

* Add analog sticks + R2,L2,R3,L3 support

* Add client logic to control left analog stick via keyboard and touch
Add client logic to toggle between dpad mode and analog mode (even for joystick)
Might need to revisit if and when remapping is implemented
Tocuh sensitivity of analog stick is pretty high, might need tweaking

* Add cores for Raspberry Pi
Add N64 core for linux x86_64

* Reset use OpenGL flag on nanoarch shutdown (line lost in refactoring)
2020-06-17 18:07:10 +08:00
sergystepanov
e05ae221e8
Add generic application statistics overlay (#168)
* Add stat module initial example

* Add stats module help overlay overlap handling

* Add generic graph canvas image builder

* Add more generic graphing module

* Clean up the code

* Some fixes

* Change graphing styles

* Clean some stats module code

* Move to RAF rendering to burn your CPU

* Add not standardized memory stats module

* Fix initial stats visibility flag handle
2020-04-26 22:19:00 +08:00