Commit Graph

190 Commits

Author SHA1 Message Date
Zihao Yu 9a5ccda71b {uart,vga}: bypass pin_peek() on the fast path 2024-01-08 23:59:07 +08:00
Zihao Yu 9ff263670e {uart,vga}: count down for clock divisor to reduce the number of memory access 2024-01-08 23:59:07 +08:00
Zihao Yu 09453390e8 term: record dirty state of the screen 2024-01-08 23:59:07 +08:00
Zihao Yu 6a1ec9f5a0 font: do not use transparent background
* this can avoid clearing the foreground first when redrew
2024-01-08 23:59:07 +08:00
Zihao Yu b8752ac898 uart: only update GUI when receiving a new char
* also limit the update frequency to the FPS
2024-01-08 23:59:07 +08:00
Zihao Yu 78b9b49c9d term: support '\n' 2024-01-08 23:59:07 +08:00
Zihao Yu 61f89b2aa7 uart: support TX 2024-01-08 23:59:07 +08:00
Zihao Yu f4d22b5b16 add basic terminal 2024-01-08 23:59:07 +08:00
Zihao Yu 7d5900e5ea add uart framework 2024-01-08 23:59:07 +08:00
Zihao Yu 28ab4be2d6 add ttf font 2024-01-08 23:59:07 +08:00
Zihao Yu cc1d7ab2d4 pic: move into resources/ 2024-01-08 23:59:07 +08:00
Zihao Yu 3da885895f pic: remove unused vbg_1.png 2024-01-08 23:59:07 +08:00
Zihao Yu e506ee2561 refactor code for creating texture 2024-01-08 23:59:07 +08:00
Zihao Yu 5031e6760e organize source files by components 2024-01-08 23:58:39 +08:00
Zihao Yu e577dd7810 enlarge window size and move the position of vga area 2024-01-08 23:10:00 +08:00
Zihao Yu 13d8822e3b
Merge pull request #25 from xinyangli/include-optimise
Clean up headers inclusion in headers
2024-01-06 00:02:37 +08:00
xinyangli edd54dd04d refactor: clean up headers inclusion in headers 2024-01-05 17:03:58 +08:00
Zihao Yu 1cf7dc440f component: do not draw the RST button 2024-01-02 04:32:43 +08:00
nekomona 731fa8f41c add buttons into example 2024-01-02 04:26:38 +08:00
Zihao Yu 23e79f86a6 nvboard: update version number 2024-01-02 03:51:22 +08:00
Zihao Yu 166f29349d nvboard: remove is_rt and is_output in nvboard_bind_pin() API
* after refactoring the internal implementation, they are unused now
2024-01-02 03:49:01 +08:00
Zihao Yu adb4b76976 vga: change texture access type to streaming
* it changes frequently
2024-01-02 03:47:35 +08:00
Zihao Yu 316c96b0df vga: move init code in update_state() to constructor 2024-01-02 03:29:52 +08:00
Zihao Yu 2635c57c41 component: optimize SEGS7.update_state() with vector peek 2024-01-02 03:22:52 +08:00
Zihao Yu 43f7981aee component: comment out unused RGB_LED 2024-01-02 02:26:12 +08:00
Zihao Yu 6d370e28e7 component: remove rt_components and call update_state() conditionally
* this can reduce the number of unnecessary function call
2024-01-02 02:20:32 +08:00
Zihao Yu d63aadff16 event: refactor 2024-01-02 02:19:02 +08:00
Zihao Yu 49e995bb1e vga: refactor to reduce memory access 2024-01-02 01:57:01 +08:00
Zihao Yu 6bad1d9a29 vga: do not update VGA region if pixels keep the same since last time 2024-01-02 01:33:38 +08:00
Zihao Yu ab21fb700c vga: peek 8 bits if pins are bound by vector 2024-01-02 01:11:34 +08:00
Zihao Yu 4f9360d8c9 nvboard: remove unused PinMap 2024-01-02 01:02:17 +08:00
Zihao Yu 63f405ebd4 bind input pin value to the origin signal
* also remove nvboard_update_input()
2024-01-02 00:57:33 +08:00
Zihao Yu e483b1ca6e bind output pin value to the origin signal
* also remove nvboard_update_output()
2024-01-02 00:56:15 +08:00
Zihao Yu 1e01a12599 pins: bind pin value to the data field in pin_array 2024-01-02 00:15:25 +08:00
Zihao Yu 6d6172a1a0 pins: use pin_peek() and pin_poke() to access pin value 2024-01-02 00:03:01 +08:00
Zihao Yu 9ce3b3c98d component: remove interface type 2024-01-01 23:34:43 +08:00
Zihao Yu 2e641ff0a5 component: do not distinguish input pins and output pins 2024-01-01 23:29:29 +08:00
Zihao Yu bb5201122d merge the encoding of input pins and output pins 2024-01-01 23:22:21 +08:00
Zihao Yu 20bb51cc53 vga: refactor code about getting pixel color 2024-01-01 23:20:42 +08:00
Zihao Yu 918d31a3b4 fix typo 2024-01-01 22:42:49 +08:00
Zihao Yu 6d3ff06ee7 include: rename constrs.h to pins.h 2024-01-01 22:39:16 +08:00
Zihao Yu 7591cd2cb1 nvboard: do not call SDL_RenderPresent() if GUI is not updated 2024-01-01 22:25:10 +08:00
Zihao Yu 11e0316d1b reduce the number of calls to get_time() 2024-01-01 22:18:09 +08:00
Zihao Yu ea8f0c15cc
Merge pull request #23 from NJU-ProjectN/macOS
feat: macOS support
2023-09-20 10:10:59 +08:00
Zihao Yu 0ee9a16c00
Merge pull request #17 from FanShupei/add-shebang
Add shebang for auto_pin_bind.py, change mode to 755
2023-09-20 09:51:12 +08:00
Yu Jin 3c52468fc6 feat: macOS support 2023-09-20 09:41:30 +08:00
Zihao Yu 079dd0e643 add comment for unused RTS pin 2023-07-27 12:18:04 +08:00
Shupei Fan aad3a35513 Add shebang for auto_pin_bind.py 2023-07-05 15:55:26 +08:00
Zihao Yu 68ffd2115a N4: remove unused pins 2022-11-25 16:52:07 +08:00
Chen Lu f42b05e1f0 keyboard: fix spelling mistake, fix #9 2022-03-24 09:11:21 +08:00