[FL-2188] Fix Desktop crush: stub dolphin stats (#950)
* Fix Desktop crush: stub dolphin stats Fix Desktop crash on butthurt > 11, so hardcoded animations are always available. Stub good dolphin stats till correct deeds management implemented. * Update ReadMe to match real project structure. Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
		
							parent
							
								
									990a065bd0
								
							
						
					
					
						commit
						9ade2349ad
					
				
							
								
								
									
										77
									
								
								ReadMe.md
									
									
									
									
									
								
							
							
						
						
									
										77
									
								
								ReadMe.md
									
									
									
									
									
								
							| @ -140,67 +140,18 @@ make whole | |||||||
| * Kickstarter page: [kickstarter.com](https://www.kickstarter.com/projects/flipper-devices/flipper-zero-tamagochi-for-hackers) | * Kickstarter page: [kickstarter.com](https://www.kickstarter.com/projects/flipper-devices/flipper-zero-tamagochi-for-hackers) | ||||||
| * Forum: [forum.flipperzero.one](https://forum.flipperzero.one/) | * Forum: [forum.flipperzero.one](https://forum.flipperzero.one/) | ||||||
| 
 | 
 | ||||||
| # Folders structure | # Project structure | ||||||
| 
 | 
 | ||||||
| - applications - application and services | - `applications`    - Applications and services used in firmware | ||||||
|   * accessor - Wiegand server | - `assets`          - Assets used by applications and services | ||||||
|   * archive - Archive and file manager  | - `bootloader`      - Bootloader source code | ||||||
|   * bt - BLE service and application | - `core`            - Furi Core: os level primitives and helpers | ||||||
|   * cli - Console service | - `debug`           - Debug tool: GDB-plugins, SVD-file and etc | ||||||
|   * debug_tools - different tools that we use on factory and for debug | - `docker`          - Docker image sources (used for firmware build automation) | ||||||
|   * dialogs - service for showing GUI dialogs | - `documentation`   - Documentation generation system configs and input files | ||||||
|   * dolphin - dolphin service and supplementary apps | - `firmware`        - Firmware source code | ||||||
|   * gpio-tester - GPIO control application | - `lib`             - Our and 3rd party libraries, drivers and etc... | ||||||
|   * gui - GUI service | - `make`            - Make helpers | ||||||
|   * ibutton - ibutton application, onewire keys and more | - `scripts`         - Supplementary scripts and python libraries home | ||||||
|   * input - input service | 
 | ||||||
|   * irda - irda application, controls your IR devices  | Also pay attention to `ReadMe.md` files inside of those directories. | ||||||
|   * irda_monitor - irda debug tool  |  | ||||||
|   * lfrfid - LF RFID application |  | ||||||
|   * lfrfid-debug - LF RFID debug tool |  | ||||||
|   * loader - application loader service |  | ||||||
|   * menu - main menu service |  | ||||||
|   * music-player - music player app (demo) |  | ||||||
|   * nfc - NFC application, HF rfid, EMV and etc |  | ||||||
|   * notification - notification service  |  | ||||||
|   * power - power service |  | ||||||
|   * power-observer - power debug tool |  | ||||||
|   * scened-app-example - c++ application example  |  | ||||||
|   * storage - storage service, internal + sdcard |  | ||||||
|   * storage_settings - storage settings app |  | ||||||
|   * subghz - subghz application, 433 fobs and etc |  | ||||||
|   * tests - unit tests and etc |  | ||||||
| - assets - assets used by applications and services |  | ||||||
|   * compiled - compilation results |  | ||||||
|   * icons - source icons images |  | ||||||
| - bootloader - bootloader for flipper |  | ||||||
|   * src - bootloader sources |  | ||||||
|   * targets - targets' hal and implementation |  | ||||||
| - core - core libraries: home for furi |  | ||||||
| - debug - debug helpers, plugins and tools |  | ||||||
| - docker - docker image sources (used for automated firmware build) |  | ||||||
| - documentation - documentation generation system configs and input files |  | ||||||
| - firmware - firmware for flipper |  | ||||||
|   * targets - targets' hal and implementation |  | ||||||
| - lib - different libraries and drivers that apps and firmware uses |  | ||||||
|   * ST25RFAL002 - ST253916 driver and NFC hal |  | ||||||
|   * STM32CubeWB - STM32WB hal |  | ||||||
|   * app-scened-template - scened template app library |  | ||||||
|   * app-template - template app library |  | ||||||
|   * callback-connector - callback connector library |  | ||||||
|   * common-api - common api declaration library |  | ||||||
|   * cyfral - cyfral library |  | ||||||
|   * drivers - drivers that we wrote |  | ||||||
|   * fatfs - external storage file system |  | ||||||
|   * fnv1a-hash - fnv1a hash library  |  | ||||||
|   * irda - irda library |  | ||||||
|   * littlefs - internal storage file system |  | ||||||
|   * mlib - algorithms and containers  |  | ||||||
|   * nfc_protocols - nfc protocols library |  | ||||||
|   * onewire - one wire library  |  | ||||||
|   * qrcode - qr code generator library |  | ||||||
|   * subghz - subghz library |  | ||||||
|   * toolbox - toolbox of things that we are using but don't place in core |  | ||||||
|   * u8g2 - graphics library that we use to draw GUI |  | ||||||
| - make - make helpers |  | ||||||
| - scripts - supplementary scripts |  | ||||||
|  | |||||||
							
								
								
									
										40
									
								
								applications/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								applications/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | |||||||
|  | # Structure | ||||||
|  | 
 | ||||||
|  | - `about`               - Small About application that shows flipper info | ||||||
|  | - `accessor`            - Wiegand server | ||||||
|  | - `archive`             - Archive and file manager  | ||||||
|  | - `bad_usb`             - Bad USB application | ||||||
|  | - `bt`                  - BLE service and application | ||||||
|  | - `cli`                 - Console service and API | ||||||
|  | - `crypto`              - Crypto cli tools | ||||||
|  | - `debug_tools`         - Different tools that we use for debug | ||||||
|  | - `desktop`             - Desktop service | ||||||
|  | - `dialogs`             - Dialogs service: GUI Dialogs for your app | ||||||
|  | - `dolphin`             - Dolphin service and supplementary apps | ||||||
|  | - `gpio`                - GPIO application: includes USART bridge and GPIO control | ||||||
|  | - `gui`                 - GUI service and API | ||||||
|  | - `ibutton`             - iButton application, onewire keys and more | ||||||
|  | - `input`               - Input service | ||||||
|  | - `irda`                - Irda application, controls your IR devices | ||||||
|  | - `irda_monitor`        - Irda debug tool | ||||||
|  | - `lfrfid`              - LF RFID application | ||||||
|  | - `lfrfid_debug`        - LF RFID debug tool | ||||||
|  | - `loader`              - Application loader service | ||||||
|  | - `music_player`        - Music player app (demo) | ||||||
|  | - `nfc`                 - NFC application, HF rfid, EMV and etc | ||||||
|  | - `notification`        - Notification service  | ||||||
|  | - `power`               - Power service | ||||||
|  | - `power_observer`      - Power debug tool | ||||||
|  | - `rpc`                 - RPC service and API | ||||||
|  | - `scened_app_example`  - C++ application example | ||||||
|  | - `snake_game`          - Snake game application | ||||||
|  | - `storage`             - Storage service, internal + sdcard | ||||||
|  | - `storage_settings`    - Storage settings app | ||||||
|  | - `subghz`              - Subghz application, 433 fobs and etc | ||||||
|  | - `system`              - System settings, tools and API | ||||||
|  | - `tests`               - Unit tests and etc | ||||||
|  | - `u2f`                 - U2F Application | ||||||
|  | 
 | ||||||
|  | - `application.c`       - Firmware application list source | ||||||
|  | - `application.h`       - Firmware application list header | ||||||
|  | - `application.mk`      - Makefile helper | ||||||
| @ -111,13 +111,16 @@ int32_t dolphin_srv(void* p) { | |||||||
|                     furi_pubsub_publish(dolphin->pubsub, &event); |                     furi_pubsub_publish(dolphin->pubsub, &event); | ||||||
|                 } |                 } | ||||||
|             } else if(event.type == DolphinEventTypeStats) { |             } else if(event.type == DolphinEventTypeStats) { | ||||||
|                 event.stats->icounter = dolphin->state->data.icounter; |                 // TODO: correct icounter/butthurt changing, stub till then
 | ||||||
|                 event.stats->butthurt = dolphin->state->data.butthurt; |                 event.stats->icounter = 0; | ||||||
|  |                 event.stats->butthurt = 0; | ||||||
|                 event.stats->timestamp = dolphin->state->data.timestamp; |                 event.stats->timestamp = dolphin->state->data.timestamp; | ||||||
|                 event.stats->level = dolphin_get_level(dolphin->state->data.icounter); |                 event.stats->level = 1; | ||||||
|                 event.stats->level_up_is_pending = |                 event.stats->level_up_is_pending = 0; | ||||||
|                     !dolphin_state_xp_to_levelup(dolphin->state->data.icounter); |  | ||||||
|             } else if(event.type == DolphinEventTypeFlush) { |             } else if(event.type == DolphinEventTypeFlush) { | ||||||
|  |                 // TODO: correct icounter/butthurt changing, stub till then
 | ||||||
|  |                 dolphin->state->data.butthurt = 0; | ||||||
|  |                 dolphin->state->data.icounter = 0; | ||||||
|                 dolphin_state_save(dolphin->state); |                 dolphin_state_save(dolphin->state); | ||||||
|             } |             } | ||||||
|             dolphin_event_release(dolphin, &event); |             dolphin_event_release(dolphin, &event); | ||||||
|  | |||||||
| @ -32,3 +32,10 @@ Good starting point: https://docs.unrealengine.com/4.27/en-US/ProductionPipeline | |||||||
| 
 | 
 | ||||||
| Don't include assets that you are not using, compiler is not going to strip unused assets. | Don't include assets that you are not using, compiler is not going to strip unused assets. | ||||||
| 
 | 
 | ||||||
|  | # Structure | ||||||
|  | 
 | ||||||
|  | - `compiled`            - Output folder for compiled assets. | ||||||
|  | - `dolphin`             - Dolphin game assets sources. Goes to `compiled` and `resources` folders. | ||||||
|  | - `icons`               - Icons sources. Goes to `compiled` folder. | ||||||
|  | - `protobuf`            - Protobuf sources. Goes to `compiled` folder. | ||||||
|  | - `resources`           - Assets that is going to be provisioned to SD card. | ||||||
|  | |||||||
							
								
								
									
										25
									
								
								lib/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								lib/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | # Structure | ||||||
|  | 
 | ||||||
|  | - `app-scened-template` - Scened template app library | ||||||
|  | - `app-template`        - Template app library | ||||||
|  | - `callback-connector`  - Callback connector library | ||||||
|  | - `common-api`          - Common api declaration library | ||||||
|  | - `cyfral`              - Cyfral library | ||||||
|  | - `drivers`             - Drivers that we wrote | ||||||
|  | - `fatfs`               - External storage file system | ||||||
|  | - `flipper_file`        - Flipper File Format library | ||||||
|  | - `fnv1a-hash`          - Fnv1a hash library | ||||||
|  | - `irda`                - Irda library | ||||||
|  | - `libusb_stm32`        - STM32 USB library | ||||||
|  | - `littlefs`            - Internal storage file system | ||||||
|  | - `micro-ecc`           - Elyptic Curve Crpytography library | ||||||
|  | - `mlib`                - Algorithms and containers | ||||||
|  | - `nanopb`              - Nano Protobuf library | ||||||
|  | - `nfc_protocols`       - Nfc protocols library | ||||||
|  | - `onewire`             - One wire library | ||||||
|  | - `qrcode`              - Qr code generator library | ||||||
|  | - `ST25RFAL002`         - ST253916 driver and NFC hal | ||||||
|  | - `STM32CubeWB`         - STM32WB series cube package | ||||||
|  | - `subghz`              - Subghz library | ||||||
|  | - `toolbox`             - Toolbox of things that we are using but don't place in core | ||||||
|  | - `u8g2`                - Graphics library that we use to draw GUI | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Albert Kharisov
						Albert Kharisov