-
Notifications
You must be signed in to change notification settings - Fork 166
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New crash screen #725
Draft
Arceveti
wants to merge
615
commits into
develop/3.0.0
Choose a base branch
from
develop/2.1.0-new-crash-screen
base: develop/3.0.0
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
New crash screen #725
Changes from 250 commits
Commits
Show all changes
615 commits
Select commit
Hold shift + click to select a range
d88e073
Press L+R to open page select popup
Arceveti 2bde0a3
Add libpl version detection to about page + small changes
Arceveti 1958736
Fix libpl build
Arceveti 29eac8e
Add libpl header include in page_about.c
Arceveti 2cdce77
Improve about page
Arceveti 4ef30f9
Fix libpl version entry
Arceveti 6ae62c5
Skip libpl entries on about page if libpl is not supported
Arceveti 51d1571
Add variables
Arceveti 9385a5b
Add a few libpl entries to about page + scrollable about page
Arceveti 80a2146
extended extended bounds entries + gfx pool + goddard
Arceveti 7a4ba53
Make entire about page scrollable
Arceveti d3053bf
Fix build with UNF + update BITFLAG_BOOL comment
Arceveti 6ae514b
Fix some about page issues
Arceveti 18dfc30
More about page changes
Arceveti c55f97e
Improve register handling
Arceveti f43a2f5
More registers improvements
Arceveti 291ae6c
Add control description for page select menu
Arceveti a22945a
Shrink page select + popup outlines
Arceveti 408344c
Add libdragon crash description heuristics + fix asserts/fpcsr on hom…
Arceveti 745531b
Remove unused field in register struct
Arceveti 9409607
Move popups to folder
Arceveti 3c7f84d
util folder
Arceveti e305485
More about page entries
Arceveti 9c95b35
Improve FPE error handling + fix float register handling + improve fl…
Arceveti d8e71ff
Rename enum 'FloatError' to 'FloatErrorType'
Arceveti d0455b3
Various changes, mostly just refactors
Arceveti fea5499
Don't print output registers on home screen
Arceveti d853b0f
Fix some settings
Arceveti f36a0d5
Add option to include non-RDRAM symbols in mapPacker.py + add map sym…
Arceveti f72a46b
About page rewrite
Arceveti c50a8b6
Fix about page UNF print + make scrollbars clearer + formatting
Arceveti 92fa246
Fix last row of registers not printing + small changes
Arceveti 2164f33
Don't print duplicate registers on home page + add output indices for…
Arceveti 1d856d0
Name hex strings in _Litob.c
Arceveti 1d209d4
cs_print_f32 improvement
Arceveti a247e82
Use osSyncPrintf for UNF prints
Arceveti bfe447d
Separate float register format detection from coprocessor number
Arceveti 1993ee4
Adjust pc for delay slot
Arceveti 080b107
Show thread number and name on registers page
Arceveti f5b5ab7
UNF intellisense + include libpl + small formatting change
Arceveti b8e90ee
Add goddard size to about page
Arceveti e72833d
More about page improvements + crash_descriptions.c reordering
Arceveti 3548308
Move goddard entry position in about page
Arceveti 4a3f153
Add asterisk to settings group header if one of its entries is change…
Arceveti 3adb40e
Add recent pages to lists
Arceveti 36ab9f4
About page list gfx pool as number of commands instead of hex
Arceveti 04cc7a8
Fix about page long long info buffers not appearing on subsequent cra…
Arceveti a4c6dfe
Settings persist on subsequent crashes
Arceveti f92f00f
A+B+START to attempt to revive crashed page
Arceveti 4d2f3ba
Add setting for address select preview symbol + fix memory page name …
Arceveti 7fcc7fc
Don't close popup on page revive + some null checks
Arceveti 6ced7d9
Fix wrong/duplicate registers on registers page + add cs_print_symbol…
Arceveti 06fcf3e
Don't open controls popup when reviving a page
Arceveti f64216a
Fix crash screen crashes not having thread descriptions
Arceveti 05a60ae
Improve some setting names
Arceveti ad14c80
Add memory region names + read doubleword aligned function
Arceveti ba956c8
Add gInspectThread + add UNF thread IDs
Arceveti 332eeb9
Determine thread 0 thread names by priority
Arceveti 0a79b28
Fix typo + add get thread state and flags str funcs + fix page select…
Arceveti 73afcaf
enum ThreadID documentation
Arceveti 4edf643
Add threads page
Arceveti eb75175
Use osMemSize for ram size in about page + auto buffer size
Arceveti 6c160d1
Change page ordering + improe CSPage enum
Arceveti 5852058
Streamline settings groups
Arceveti 731e7ed
Allow changing the crash screen's inspected thread + page ordering
Arceveti dd641c5
Reegisters page fixes + add DIV_CEIL
Arceveti 8b7cd1e
Fix some struct/union definition formats
Arceveti e84457b
Add selection cursor and register inspection to registers page (unfin…
Arceveti c7d2e35
Fix UNF thread IDs in enum + improve some comments
Arceveti f07b721
Move cs_reinitialize_pagesto crash_pages
Arceveti 79480b0
some float and registers stuff
Arceveti 68e4593
Registers page horizontal wrapping
Arceveti 1113995
Add console processor id to about page
Arceveti 932f5f1
VERSION.txt for crash screen
Arceveti 1b9fd89
Status and FPCSR decode bits with reginspect
Arceveti b3e0116
rename home page to summary and popup_register to popup_reginspect
Arceveti b8e4995
Add cause register to registers page
Arceveti c9572d4
Show data at pointers in reginspect
Arceveti 4ebcfbc
improve two descriptions
Arceveti 76e8810
Add binary search for map symbols + add translucent divider between s…
Arceveti 31caf7b
Jump to pointer location from reginspect
Arceveti 2242953
color for unknown disasm rows + name unknown thread
Arceveti 4d91482
move rgba16_blend to crash_draw
Arceveti 383b1bc
Some stuff
Arceveti eb8fb7b
Use binary symbol search for disasm branch arrows
Arceveti 2f0a5b4
Output map data rom sizes to debug_map.txt (like goddard.txt)
Arceveti aa79f92
Change "crash_" file prefix to "cs_"
Arceveti 5893723
Print code fields in disasm for exception causing instructions
Arceveti 98c0f9f
Add hex prefix to disasm code fields
Arceveti 97ffebd
Add support for odd numbered float registers (f64 can generate code t…
Arceveti d3d1231
more various stuff
Arceveti c25267c
Don't store branch arrow colors in buffer + increase buffer size
Arceveti 181a1e9
Optimizations to reduce branch arrow buffer size
Arceveti 6390757
Move thread entry draw to cs_draw and use on regs page + add commente…
Arceveti cce0b0b
Change in makefile (was unstaged)
Arceveti 01abdac
Rename 'popup_address_select' files to 'popup_address' + add page nam…
Arceveti dde8d55
some stuff
Arceveti dfcb3aa
Move threads to dropdown on registers page + add stuff to readme + lo…
Arceveti 8bb90e6
Remove remaining threads page stuff
Arceveti 7dc1579
Fix "debug_assert" UNF conflict (renamed the UNF version)
Arceveti 3a3a28c
Thread name fallback on map symbol name
Arceveti e5c3b2a
Update readme + some comments
Arceveti 5a4be03
cs_main refactoring
Arceveti 3f11385
Add option for symbol name headers in disasm
Arceveti 63a0f63
Fix thread queue looping after second crash screen crash
Arceveti a12c875
Update readme
Arceveti 8f4e601
Fix print_as_binary + print binary data on II exception + fix map pag…
Arceveti 08801aa
cs_draw_triangle optimization
Arceveti b4984fa
Summary page layout + some refactoring
Arceveti baf031c
Fix floats being incorrect in hex mode on registers page
Arceveti db35404
Add special registers + RCP crash handling + various refactoring
Arceveti 88a8a7e
Fix capital "N" in font
Arceveti 77e10fb
Redesign summary page again + refactoring
Arceveti 4ca081b
Revert assert message color
Arceveti 86bee5a
summary page stuff
Arceveti 7b9151a
even more summary page stuff
Arceveti 3323732
Add binary and color display modes to memory page
Arceveti 8e21df1
Better print buffers + move RCP assert info to the asserts in main.h
Arceveti e5d9a29
Fix missing includes for asserts
Arceveti 0013305
Update some comments + remove a redundant fname check.
Arceveti 8acb8a8
Make a couple asserts clearer
Arceveti 82ac27f
Add get_segment_name
Arceveti 20f049e
Add assert for missing source warp node
Arceveti 7458d40
Fix typo
Arceveti 9dd84ce
Add symbol dividers to memory page + improve on disasm page
Arceveti 8aa47f4
Improve fallback memory strings
Arceveti 64a61b1
Improve memory page dividers + pointer jumps
Arceveti 2f93208
Various refactors
Arceveti 4feb3e4
float format info for lwc1/ldc1/swc1/sdc1
Arceveti d18d057
More refactoring + PRIds
Arceveti 482dedb
Improve reginspect
Arceveti 1137ae5
Rename "MAP VIEW" to "MAP SYMBOLS"
Arceveti 0530f1d
Improve some debug map ifdefs
Arceveti 99bc22f
Improve printing of unknown map symbol sizes
Arceveti 889c385
Put crash screen in its own rom segment and add sSegmentSizes
Arceveti 4b438e6
Add sSegmentROMTable without breaking Fast64 exporting + strings for …
Arceveti ff484b9
Clean up some segment stuff
Arceveti 4578af8
Fix build warning
Arceveti 9bd6091
Add segments page
Arceveti c4495e0
Reginspect print both 32 and 64 bit values
Arceveti f887a16
Improve asserts + reginspect bool strings
Arceveti ff87e48
Fix unsafe data read when searching for branch offsets.
Arceveti 541486f
Combine cs_draw_rect/cs_draw_dark_rect/cs_draw_outline + optimize rec…
Arceveti ab76c58
Use faster darken drawing in all draw funcs
Arceveti 2985bd7
Fix denorm/NaN text color on reginspect
Arceveti fc05a45
Fix typo in symbol_is_function
Arceveti 4c7d142
Add asserts for some common crashes + specific "level" and "rcp" asse…
Arceveti aa05f32
fix typo
Arceveti 025758b
Improve segment symbols
Arceveti cc36e58
Add CLZ/CTZ/POPCOUNT macros
Arceveti dd46bb3
Fix safe memoey read for physical addresses
Arceveti d3527d3
Improve reginspect
Arceveti 5e478e9
Update asm.h
Arceveti 656de5a
Add interface registers page
Arceveti f1a5e0c
Hi Arthur
Arceveti 6f00f3d
Use __func__ to get current function name for asserts instead of usin…
Arceveti 4227fd6
Add c standard version to compiler section on about page
Arceveti 5cd024e
Fix RDB description
Arceveti 33b4025
Include assert.h in macros.h
Arceveti f529732
Actually fix safe memory reads
Arceveti 1f7d4df
Print badvaddr to summary page for TLB or address exceptions
Arceveti 0e46aaf
Allow moving cursor while reginspect is open + improve register page …
Arceveti 1b89b37
Print badvaddr on EXC_MOD
Arceveti 32e9216
Add to builtins.h + custom message if running code in non-code segment
Arceveti 1a06461
Registers rewrite
Arceveti 64d31e2
Various cleanup
Arceveti 41591bc
Clean up reginspect decoded bits printing
Arceveti d7e87ea
Small changes
Arceveti 36bd5b3
Add build.c + add commit hash to build info + small changes
Arceveti 508ab49
Rename 'TO_STRING' and 'TO_STRING2' to 'STRINGIFY' and 'EXPAND_AND_ST…
Arceveti 9f21629
Improve viewable/scrollable memory boundary defines
Arceveti 29c12a8
Fix symbol dividers crash + make the setting work + allow scrolling i…
Arceveti 30ab8cc
MapSymbolIndex typedef + fix build warnings
Arceveti 3159654
Reginspect for interface registers
Arceveti ac1641e
Cleaner microcode name define
Arceveti 23f67fd
Add f3dex3 check to about page
Arceveti 9b4da37
Some reginspect bit decoding
Arceveti b9e2349
Rename reg bits commands + fix typos
Arceveti f7e315f
Fix register data .inc.c includes
Arceveti 55b1f5b
sRegDesc_Default extern
Arceveti 1e8b6f5
Add cs_draw_custom_5x5_glyph (unused for now)
Arceveti 2b5050f
add 'checkThread' arg to get_reg_val
Arceveti a5713ca
Rename 'registers' folder to 'register_data'
Arceveti 6daa911
CP2.inc.c and CP3.inc.c consistency
Arceveti 386064e
Move reg bit defines from reginspect to reg_bits.h
Arceveti 49186ef
Some C0 register bit mask defines
Arceveti dfd6a4c
Fix build
Arceveti 3e24de5
C0 config reginspect decoded bits + sureAddr in reg info
Arceveti dd30315
Add mention of L/R to switch page in the summary page instruction text
Arceveti d57901d
Draw registers page sections from list + get_reg_val null checks
Arceveti 4101f49
Fix macro/define name in assert conditions + mark code after asserts …
Arceveti 3da6bca
Improve reginspect pointer detection
Arceveti 93b6531
Merge branch 'develop/2.3.0' of https://github.com/Reonu/HackerSM64 i…
Arceveti 2a59b3f
Move instruction data to insn_db.inc.c
Arceveti c4bdda3
Improve register order on registers page + improve description printi…
Arceveti 11229d7
Move reginspect bit decode data to reginspect_bits.inc.c + clean up r…
Arceveti e775e71
Stack trace cleanup + Add HI_OF_/LO_OF_ macros
Arceveti 2abd2b5
Clean up some debug map ifdefs
Arceveti e6c3e71
Add symbols mode to memory view
Arceveti d37ac91
Smooth text scrolling
Arceveti eac8af8
Print an additional character of symbols on memory page + osWriteback…
Arceveti e05be1a
More space for symbols on thread registers page
Arceveti 6e7e79b
Update readme + reduce stack trace buffer size
Arceveti c734dbb
Reduce size of disasm instruction database by half
Arceveti f106513
show start and size instead of range on segments page
Arceveti dec76ac
Move warp node asserts + add assert for null music dynamics + update …
Arceveti 7cca77e
Only calculate text scroll speed once
Arceveti d060bc7
Draw footer on crashed page + some null checks
Arceveti 0dd5439
Clean up segment_symbols.h
Arceveti 6ae348e
Add hardcoded segments to segments page + move segment data to new files
Arceveti 2ed4517
enum typedef consistency
Arceveti 676e4ec
Add new UNF rdb thread id
Arceveti e101238
insn_db fixes
Arceveti 45a74a3
Move attributes to attributes.h
Arceveti 12dec74
Better disasm branch arrow fill buffer trigger
Arceveti 74006f7
Memory page f32 mode (aligned)
Arceveti 7e11ab7
Check if valid ram addr in memory page symbols mode
Arceveti 3696dc8
Add LLBit register info
Arceveti d111ee8
Use local variable for LLBit check
Arceveti 42f6a73
Handle watchpoint exceptions
Arceveti 3483ca1
Highlight sp and badvaddr on memory page
Arceveti f59c343
Move register info defines to the files they're used in
Arceveti ca31ea4
Add count factor and adjust some timings accordingly
Arceveti 6ee3659
thread pri 0 while waiting but pri appmax-1 after crash + mapPacker.p…
Arceveti 33aef53
Better count factor timing adjustment
Arceveti e0820c4
disasm improvements
Arceveti 71c9293
Even better count factor timing adjustment
Arceveti 6f779c1
Add option to try to parse non-.text data as instructions
Arceveti 71c999b
Move disasm reg buffer to disasm file
Arceveti cebdb3e
Print extra registers on summary for certain instructions
Arceveti 3a5b950
Merge branch 'develop/2.3.0' of https://github.com/Reonu/HackerSM64 i…
Arceveti 056706c
Only use 2 framebuffers + some small fixes
Arceveti 74771e6
Disasm pseudo C code mode
Arceveti a6b4c33
Fix disasm pseudo C flickering by forcing 30 FPS (?)
Arceveti 583b2ce
Pseudo C code improvements
Arceveti deeed7e
Improve pseudo C comments
Arceveti e7417af
Add subiu and dsubiu pseudoinstructions
Arceveti 74888ea
Fix trap instruction param in pseudo C
Arceveti 0682d4f
Cache op names + other stuff
Arceveti caf253e
Stack trace rewrite (now actually works properly)
Arceveti 26eb1b8
Small changes
Arceveti 295d61b
Update stack trace page + other fixes
Arceveti 95d80a5
Better double buffering (fixes Parallel screenshot flickering)
Arceveti 790fcda
Add "unreachable" after FORCE_CRASH()
Arceveti 1f156d9
reginspect stuff
Arceveti f7ff1b8
Turn off VI special features on crash (saves 1-2ms on console and fix…
Arceveti 8d2f083
Add all builtins to builtins.h
Arceveti 947c078
Add static asserts for struct/union sizes
Arceveti f1bc0f6
disasm/pseudoC updates
Arceveti 2a1d69e
Merge branch 'develop/3.0.0' of https://github.com/HackerN64/HackerSM…
arthurtilly File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -87,14 +87,15 @@ else ifeq ($(VERSION),sh) | |
DEFINES += VERSION_SH=1 | ||
endif | ||
|
||
# FIXLIGHTS - converts light objects to light color commands for assets, needed for vanilla-style lighting | ||
FIXLIGHTS ?= 1 | ||
|
||
DEBUG_MAP_STACKTRACE_FLAG := -D DEBUG_MAP_STACKTRACE | ||
|
||
# TARGET - | ||
TARGET := sm64 | ||
|
||
|
||
# FIXLIGHTS - converts light objects to light color commands for assets, needed for vanilla-style lighting | ||
FIXLIGHTS ?= 1 | ||
|
||
|
||
# GRUCODE - selects which RSP microcode to use. | ||
# f3dex - | ||
# f3dex2 - | ||
|
@@ -358,7 +359,7 @@ ACTOR_DIR := actors | |
LEVEL_DIRS := $(patsubst levels/%,%,$(dir $(wildcard levels/*/header.h))) | ||
|
||
# Directories containing source files | ||
SRC_DIRS += src src/boot src/game src/engine src/audio src/menu src/buffers actors levels bin data assets asm lib sound | ||
SRC_DIRS += src src/boot src/game src/engine src/audio src/menu src/buffers src/images src/crash_screen src/crash_screen/pages actors levels bin data assets asm lib sound | ||
LIBZ_SRC_DIRS := src/libz | ||
GODDARD_SRC_DIRS := src/goddard src/goddard/dynlists | ||
BIN_DIRS := bin bin/$(VERSION) | ||
|
@@ -605,7 +606,7 @@ patch: $(ROM) | |
|
||
# Extra object file dependencies | ||
$(BUILD_DIR)/asm/ipl3.o: $(IPL3_RAW_FILES) | ||
$(BUILD_DIR)/src/game/crash_screen.o: $(CRASH_TEXTURE_C_FILES) | ||
$(BUILD_DIR)/src/crash_screen/crash_draw.o: $(CRASH_TEXTURE_C_FILES) | ||
$(BUILD_DIR)/src/game/version.o: $(BUILD_DIR)/src/game/version_data.h | ||
$(BUILD_DIR)/lib/aspMain.o: $(BUILD_DIR)/rsp/audio.bin | ||
$(SOUND_BIN_DIR)/sound_data.o: $(SOUND_BIN_DIR)/sound_data.ctl $(SOUND_BIN_DIR)/sound_data.tbl $(SOUND_BIN_DIR)/sequences.bin $(SOUND_BIN_DIR)/bank_sets | ||
|
@@ -615,8 +616,6 @@ ifeq ($(VERSION),sh) | |
$(BUILD_DIR)/src/audio/load_sh.o: $(SOUND_BIN_DIR)/bank_sets.inc.c $(SOUND_BIN_DIR)/sequences_header.inc.c $(SOUND_BIN_DIR)/ctl_header.inc.c $(SOUND_BIN_DIR)/tbl_header.inc.c | ||
endif | ||
|
||
$(CRASH_TEXTURE_C_FILES): TEXTURE_ENCODING := u32 | ||
|
||
ifeq ($(COMPILER),gcc) | ||
$(BUILD_DIR)/src/libz/%.o: OPT_FLAGS := -Os | ||
$(BUILD_DIR)/src/libz/%.o: CFLAGS += -Wno-implicit-fallthrough -Wno-unused-parameter -Wno-pointer-sign | ||
|
@@ -856,7 +855,7 @@ $(BUILD_DIR)/rsp/%.bin $(BUILD_DIR)/rsp/%_data.bin: rsp/%.s | |
# Run linker script through the C preprocessor | ||
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT) $(BUILD_DIR)/goddard.txt | ||
$(call print,Preprocessing linker script:,$<,$@) | ||
$(V)$(CPP) $(CPPFLAGS) -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) $(DEBUG_MAP_STACKTRACE_FLAG) -MMD -MP -MT $@ -MF [email protected] -o $@ $< | ||
$(V)$(CPP) $(CPPFLAGS) -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) -MMD -MP -MT $@ -MF [email protected] -o $@ $< | ||
|
||
# Link libgoddard | ||
$(BUILD_DIR)/libgoddard.a: $(GODDARD_O_FILES) | ||
|
@@ -869,7 +868,7 @@ $(BUILD_DIR)/libz.a: $(LIBZ_O_FILES) | |
$(V)$(AR) rcs -o $@ $(LIBZ_O_FILES) | ||
|
||
# SS2: Goddard rules to get size | ||
$(BUILD_DIR)/sm64_prelim.ld: sm64.ld $(O_FILES) $(YAY0_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/libgoddard.a $(BUILD_DIR)/libz.a | ||
$(BUILD_DIR)/sm64_prelim.ld: $(LD_SCRIPT) $(O_FILES) $(YAY0_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/libgoddard.a $(BUILD_DIR)/libz.a | ||
$(call print,Preprocessing preliminary linker script:,$<,$@) | ||
$(V)$(CPP) $(CPPFLAGS) -DPRELIMINARY=1 -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) -MMD -MP -MT $@ -MF [email protected] -o $@ $< | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,11 @@ | ||
.include "macros.inc" | ||
.section .data | ||
.balign 16 | ||
glabel gMapEntries | ||
glabel gMapSymbols | ||
.incbin "bin/addr.bin" | ||
glabel gMapEntryEnd | ||
glabel gMapSymbolsEnd | ||
|
||
.balign 16 | ||
glabel gMapStrings | ||
.incbin "bin/name.bin" | ||
glabel gMapStringsEnd | ||
|
||
.balign 16 | ||
glabel gMapEntrySize | ||
.word (gMapEntryEnd - gMapEntries) / 4 | ||
glabel gMapStringSize | ||
.word (gMapStringsEnd - gMapStrings) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing description
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should it be merged with
TARGET_STRING
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorta out of scope but whatever I guess
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done