Commit Graph

28 Commits

Author SHA1 Message Date
Allen Webster 7817f8412d Trying to debug weird allocator crash bug; switching to windows 2020-01-19 12:00:58 -08:00
Yuval Dolev eea989aa73 Removed the todo comment regrading fixing the mutex issue. 2020-01-19 05:48:28 +02:00
Yuval Dolev 354b4fe6dc All mutexes are now refrence counted. This solves a lot of the crashes caused by deadlocks in situations where the same thread locks its own mutex multiple times before unlocking it. 2020-01-19 05:47:01 +02:00
Yuval Dolev b255da9d00 Fixed path length sent to proc_pidpath because it seems to expect a maximum path length which was previously exceeded. Opening 4coder now works from anywhere. 2020-01-19 05:30:04 +02:00
Yuval Dolev de9fc34c3e Added a hack to fix DeadLock problem regrading the system_memory_annotation function. Also started working on fixing the performance issues that I discovered in the graphics renderer on retina displays (for now I changed to FCoder_View to be layer backed which is faster for rendering animations, this seems to improve performance by a little margin but rendering on high dpi displays is not closed to being smooth yet...). 2020-01-14 03:22:29 +02:00
Yuval Dolev a737a5409a Implemented all system cli handling functions. 2020-01-13 16:15:25 +02:00
Yuval Dolev f7b0b05426 Posting to clipboard now works. 2020-01-13 03:20:58 +02:00
Yuval Dolev 7d2a91805b The clipboard is now read is frame and on changes and sent to the core. We're using polling to get the clipboard contents on macOS using a timer because there is no way to get a clipboard change notification on macOS (sigh...) 2020-01-13 03:05:44 +02:00
Yuval Dolev dbcb05d2d1 Fixed a performance issue regarding timers. Now we can start a single timer per step request. 2020-01-12 23:16:03 +02:00
Yuval Dolev 020e2789d7 Fixed input bug where the input was not zeroed at the end of each frame. 2020-01-12 03:08:07 +02:00
Yuval Dolev 8e4ec5215f Added KeyStoke and KeyRelease events and fixed TextInput events. 2020-01-11 22:19:43 +02:00
Yuval Dolev 912bcae8a7 Started working on an abstraction for the macOS renderer implementations. 2020-01-09 02:15:25 +02:00
Yuval Dolev 521fb82113 The Metal renderer is now fully functioning. 2020-01-08 21:44:47 +02:00
Yuval Dolev 4e0549f270 OpenGL renderer abstraction. The OpenGL renderer is now in its own view that's separate from the main 4coder view which handles all input and updates. Also added a Window Delegate which handled window events. 2020-01-03 00:09:22 +02:00
Yuval Dolev 6f827801e5 macOS platform layer initialization and very basic update functions. The 4coder beta has been rendered successfully for the first time on macOS! 2020-01-02 01:13:32 +02:00
Yuval Dolev 26fd4cd230 Finished most of the system api functions (a few will be implemented later). 2020-01-01 00:07:21 +02:00
Yuval Dolev 8c7600ba09 Implemented all system memory handling functions. 2019-12-31 23:36:12 +02:00
Yuval Dolev 9263a4a59f Implemented all system mutex and cv handling functions. 2019-12-31 13:14:05 +02:00
Yuval Dolev cbdc6a14e0 Implemented all system thread handling functions. 2019-12-31 03:22:50 +02:00
Yuval Dolev aff4a783e0 Implemented system_get_screen_scale_factor. 2019-12-31 01:56:12 +02:00
Yuval Dolev 912174e725 Experimentations with redrawing the opengl view. 2019-12-31 00:04:33 +02:00
Yuval Dolev 1d6be32462 Setup window and basic opengl view. 2019-12-30 03:21:21 +02:00
Yuval Dolev 50b8a64614 The projects compiles. 2019-12-30 02:33:30 +02:00
Yuval Dolev dc213307a9 Implemented all system wake up timer functions. 2019-12-30 00:34:53 +02:00
Yuval Dolev 76069e9ac1 Created basic Mac_Object structure and mac object allocation function. 2019-12-29 03:09:28 +02:00
Yuval Dolev 8020dcf385 Implemented system_now_time. 2019-12-29 00:11:34 +02:00
Yuval Dolev a91158ebf0 Implemented all system library handling functions. 2019-12-28 01:54:33 +02:00
Yuval Dolev da150cd322 Merged mac_4ed.cpp into mac_4ed.mm so now we have only 1 main file for the macOS platform layer. 2019-12-27 23:59:59 +02:00