Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							d7a9c7ec4c 
							
						 
					 
					
						
						
							
							ams: support building unit test programs on windows/linux/macos  
						
						 
						
						
						
					 
					
						2022-03-23 09:15:46 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Léo Lam 
							
						 
					 
					
						
						
						
						
							
						
						
							2916512fb7 
							
						 
					 
					
						
						
							
							Minor header fixes to reduce parsing issues with Clang ( #1700 )  
						
						 
						
						... 
						
						
						
						* Work around Clang's incomplete C++20 support for omitting typename
* vapours: fix Clang error about missing return in constexpr function
* stratosphere: fix call to non-constexpr strlen in constexpr function
strlen being constexpr is a non-compliant GCC extension; Clang
explicitly rejects it: https://reviews.llvm.org/D23692 
* stratosphere: add a bunch of missing override specifiers
* stratosphere: work around Clang consteval bug
Minimal example: https://godbolt.org/z/MoM64v93M 
The issue seems to be that Clang does not consider f(x) to be a
constant expression if x comes from a template argument that isn't
a non-type auto template argument (???)
We can work around this by relaxing GetMessageHeaderForCheck (by using
constexpr instead of consteval). This produces no functional changes
because the result of GetMessageHeaderForCheck() is assigned to a
constexpr variable, so the result is guaranteed to be computed
at compile-time.
* stratosphere: fix missing require clauses in definitions
GCC not requiring the require clauses to be repeated for member
definitions is actually a compiler bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96830 
Clang rejects declarations with missing require clauses.
* Fix ALWAYS_INLINE_LAMBDA and parameter list relative order
While GCC doesn't seem to care about the position of the always_inline
attribute relative to the parameter list, Clang is very picky
and requires the attribute to appear after the parameter list
(and before a trailing return type)
* stratosphere: fix static constexpr member variable with incomplete type
GCC accepts this for some reason (because of the lambda?) but Clang
correctly rejects this. 
						
					 
					
						2021-11-30 16:34:43 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							3b5f56ab9f 
							
						 
					 
					
						
						
							
							ams: replace most remaining operator & with std::addressof  
						
						 
						
						
						
					 
					
						2021-10-15 23:54:34 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							612b9e2f01 
							
						 
					 
					
						
						
							
							strat: prefer os::NativeHandle to Handle/svc::Handle where sensible  
						
						 
						
						
						
					 
					
						2021-10-07 23:06:26 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							002422d5dc 
							
						 
					 
					
						
						
							
							ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals  
						
						 
						
						
						
					 
					
						2021-10-07 23:06:25 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							69a0ec03e9 
							
						 
					 
					
						
						
							
							strat: use consistent include style for lib headers  
						
						 
						
						
						
					 
					
						2021-10-07 23:06:23 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							7111b5cce6 
							
						 
					 
					
						
						
							
							strat: no longer materially constrained by sm session limit  
						
						 
						
						
						
					 
					
						2021-04-29 03:04:50 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							2fe065b590 
							
						 
					 
					
						
						
							
							tipc/sm: various fixes for issues  
						
						 
						
						
						
					 
					
						2021-04-11 03:59:24 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							2542f282e0 
							
						 
					 
					
						
						
							
							sm: reimplement using tipc instead of cmif (probably broken, untested)  
						
						 
						
						
						
					 
					
						2021-04-11 03:59:24 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							637c44f64d 
							
						 
					 
					
						
						
							
							libstrat: convert to experimental new (super-accurate) sf allocation semantics  
						
						 
						
						
						
					 
					
						2021-02-02 12:16:20 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							3d99fa326d 
							
						 
					 
					
						
						
							
							sm: implement UserService::DetachClient  
						
						 
						
						
						
					 
					
						2020-12-02 06:53:06 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							fea438eb76 
							
						 
					 
					
						
						
							
							sm: fix deadlock semantics surrounding mitm installation  
						
						 
						
						
						
					 
					
						2020-09-07 10:51:46 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								SciresM 
							
						 
					 
					
						
						
						
						
							
						
						
							ecf8389efd 
							
						 
					 
					
						
						
							
							sf: Change interface definition methodology ( #1074 )  
						
						 
						
						... 
						
						
						
						* sf: Begin experimenting with new interface declaration format
* sf: convert fs interfaces to new format
* sf: finish conversion of libstrat to new definitions
* sf: convert loader to new format
* sf: convert spl to new format
* sf: update ncm for new format
* sf: convert pm to new format
* sf: convert ro/sm to new format
* sf: update fatal for new format
* sf: support building dmnt under new scheme
* sf: update ams.mitm for new format
* sf: correct invocation def for pointer holder
* fs: correct 10.x+ user bindings for Get*SpaceSize 
						
					 
					
						2020-08-01 15:30:56 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Adubbz 
							
						 
					 
					
						
						
						
						
							
						
						
							6e8ea3aafd 
							
						 
					 
					
						
						
							
							NCM client implementation ( #858 )  
						
						 
						
						... 
						
						
						
						* ncm: Implement InstallTaskDataBase and FileInstallTaskData
* ncm: minor bugfixes
* ncm: Implemented MemoryInstallTaskData
* ncm: more std
* ncm: begin implementing install task base
* ncm: move protected funcs
* ncm: fix recursive include
* ncm: more install task progress
* ncm install task: implement IncrementProgress and update UpdateThroughputMeasurement
* ncm: more work
* ncm client: more progress
* ncm client: more progress
* ncm client: finish implementing GetContentMetaInfoList
* ncm client: more progress
* ncm client: finished InstallTaskBase
* ncm client: implement PackageInstallTaskBase
* ncm client: fixes
* ncm: improve accuracy
* ncm client: implement PackageInstallTask
* ncm client: implement PackageSystemUpdateTask
* ncm client: minor name tweaks
* ncm client: implement SubmissionPackageInstallTask
* ncm client: add missing this to SubmissionPackageInstallTask
* ncm client: add missing nullptr check to SubmissionPackageInstallTask destructor
* ncm client: SubmissionPackageInstallTask fixes
* ncm: fix forward declarations
* ncm client: added simplified funcs
* ncm: cleanup client code
* ncm: fix bug introduced by cleanup
* ncm: fix typo
* ncm: implement correct ReadVariationContentMetaInfoList behavior
* ncm: correct InstallContentMetaWriter ctor
* ncm: correct conversion of content meta header types
Co-authored-by: Michael Scire <SciresM@gmail.com> 
						
					 
					
						2020-04-05 23:25:44 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Adubbz 
							
						 
					 
					
						
						
						
						
							
						
						
							aec0f45bdb 
							
						 
					 
					
						
						
							
							Implement the NCM sysmodule ( closes   #91 )  
						
						 
						
						... 
						
						
						
						* Implement NCM
* Modernize ncm_main
* Remove unnecessary smExit
* Give access to svcCallSecureMonitor
* Stack size bump
* Fix incorrect setup for NandUser's content storage entry
* Fix a potential data abort when flushing the placeholder accessor cache
* Fix HasFile and HasDirectory
* Use r+b, not w+b
* Misc fixes
* errno begone
* Fixed more stdio error handling
* More main fixes
* Various command improvements
* Make dispatch tables great again
* Fix logic inversion
* Fixed content path generation
* Bump heap size, fix CleanupAllPlaceHolder
* Various fixes. Note: This contains debug stuff which will be removed later. I was getting tired of having to cherrypick tiny changes
* Fixed placeholder/content deletion
* Fixed incorrect content manager destruction
* Prevent automatic placeholder creation on open
* Fixed List implementation. Also lots of debug logging.
* Removed debug code
* Added a scope guard for WritePlaceHolder
* Manually prevent placeholder/content appending
* Revert "Removed debug code"
This reverts commit d6ff261fcc8c1f26968e894b02c17a01a12ec98b.
* Always cache placeholder file. Switch to ftell for preventing appending
* Universally use EnsureEnabled
* Abstract away file writing logic
* Misc cleanup
* Refactor placeholder cacheing
* Remove debug code (again)
* Revert "Remove debug code (again)"
This reverts commit 168447d80e9640768fb1b43f04a385507c1bb5ab.
* Misc changes
* Fixed file modes
* Fixed ContentId/PlaceHolderId alignment
* Improved type safety
* Fixed reinitialization
* Fixed doubleup on path creation
* Remove debug code
* Fixed 1.0.0 booting
* Correct amount of add on content
* Correct main thread stack size
* lr: Introducing registered data
* Reorder stratosphere Makefile
* Move results to libstrat
* lr: Cleanup lr_redirection
* lr: lr_manager tweaks
* lr: Imrpoved path handling and adjust ResolveAddOnContentPath order
* lr: Organise types
* Add eof newlines
* lr: Eliminate unnecessary vars
* lr: Unnecessary vars 2 electric boogaloo
* lr: Various helpers
* lr: RegisteredLocationResolver helpers
* ncm: Move ncm_types to libstrat
* ncm: Misc cleanup
* Implement NCM
* Modernize ncm_main
* Remove unnecessary smExit
* Give access to svcCallSecureMonitor
* Stack size bump
* Fix incorrect setup for NandUser's content storage entry
* Fix a potential data abort when flushing the placeholder accessor cache
* Fix HasFile and HasDirectory
* Use r+b, not w+b
* Misc fixes
* errno begone
* Fixed more stdio error handling
* More main fixes
* Various command improvements
* Make dispatch tables great again
* Fix logic inversion
* Fixed content path generation
* Bump heap size, fix CleanupAllPlaceHolder
* Various fixes. Note: This contains debug stuff which will be removed later. I was getting tired of having to cherrypick tiny changes
* Fixed placeholder/content deletion
* Fixed incorrect content manager destruction
* Prevent automatic placeholder creation on open
* Fixed List implementation. Also lots of debug logging.
* Removed debug code
* Added a scope guard for WritePlaceHolder
* Manually prevent placeholder/content appending
* Revert "Removed debug code"
This reverts commit d6ff261fcc8c1f26968e894b02c17a01a12ec98b.
* Always cache placeholder file. Switch to ftell for preventing appending
* Universally use EnsureEnabled
* Abstract away file writing logic
* Misc cleanup
* Refactor placeholder cacheing
* Remove debug code (again)
* Revert "Remove debug code (again)"
This reverts commit 168447d80e9640768fb1b43f04a385507c1bb5ab.
* Misc changes
* Fixed file modes
* Fixed ContentId/PlaceHolderId alignment
* Improved type safety
* Fixed reinitialization
* Fixed doubleup on path creation
* Remove debug code
* Fixed 1.0.0 booting
* Correct amount of add on content
* Correct main thread stack size
* lr: Introducing registered data
* Reorder stratosphere Makefile
* Move results to libstrat
* lr: Cleanup lr_redirection
* lr: lr_manager tweaks
* lr: Imrpoved path handling and adjust ResolveAddOnContentPath order
* lr: Organise types
* Add eof newlines
* lr: Eliminate unnecessary vars
* lr: Unnecessary vars 2 electric boogaloo
* lr: Various helpers
* lr: RegisteredLocationResolver helpers
* ncm: Move ncm_types to libstrat
* ncm: Misc cleanup
* Updated AddOnContentLocationResolver and RegisteredLocationResolver to 9.0.0
* Finished updating lr to 9.0.0
* Updated NCM to 9.0.0
* Fix libstrat includes
* Fixed application launching
* title_id_2 -> owner_tid
* Updated to new-ipc
* Change to using pure virtuals
* Title Id -> Program Id
* Fixed compilation against master
* std::scoped_lock<> -> std::scoped_lock
* Adopted R_UNLESS and R_CONVERT
* Prefix namespace to Results
* Adopt std::numeric_limits
* Fixed incorrect error handling in ReadFile
* Adopted AMS_ABORT_UNLESS
* Adopt util::GenerateUuid()
* Syntax improvements
* ncm_types: Address review
* Address more review comments
* Updated copyrights
* Address more feedback
* More feedback addressed
* More changes
* Move dispatch tables out of interface files
* Addressed remaining comments
* lr: move into libstratosphere
* ncm: Fix logic inversion
* lr: Add comments
* lr: Remove whitespace
* ncm: Start addressing feedback
* ncm: Cleanup InitializeContentManager
* lr: support client-side usage
* lr_service -> lr_api
* ncm: Begin refactoring content manager
* ncm: More content manager improvements
* ncm: Content manager mount improvements
* ldr: use lr bindings
* lr bindings usage: minor fixes
* ncm/lr: Pointer placement
* ncm: placeholder accessor cleanup
* ncm: minor fixes
* ncm: refactor rights cache
* ncm: content meta database cleanup
* ncm: move content meta database impl out of interface file
* ncm: Use const ContentMetaKey &
* ncm: fix other non-const ContentMetaKey references
* ncm: content meta database cleanup
* ncm: content storage fixes for 2.0.0
* ncm: add missing end of file newlines
* ncm: implement ContentMetaReader
* ncm: client-side api
* ncm: trim trailing spaces
* ncm: FS_MAX_PATH-1 -> fs::EntryNameLengthMax
* ncm: Use PathString and Path
* fs: implement accessor wrappers for ncm
* fs: implement user fs wrappers
* fs: add MountSdCard
* ncm: move to content manager impl
* ncm: fix up main
* kvdb: use fs::
* fs: Add wrappers needed for ncm
* ncm: use fs bindings, other refactoring
* ncm: minor fixes
* fsa: fix ReadFile without size output
* fs: add substorage, rom path tool
* ncm: fix dangling fsdev usage
* fs: fix bug in Commit
* fs: fixed incorrect mode check
* fs: implement Mount(System)Data
* ncm: don't delete hos
* results: add R_SUCCEED_IF
* ams-except-ncm: use R_SUCCEED_IF
* ncm: added comments
* ncm: fix api definitions
* ncm: use R_SUCCEED_IF
* pm: think of the savings
* ncm: employ kernel strats
* ncm: Nintendo has 5 MiB of heap. Give ourselves 4 to be safe, pending analysis
* ncm: refactor IDs, split types header into many headers
* ams.mitm: use fs bindings instead of stdio
* fs: SystemData uses SystemDataId
* ncm: improve meta-db accuracy
* ncm: inline getlatestkey
* fs: improve UnsupportedOperation results
* fs: modernize mount utils
* ams: misc fixes for merge-errors
* fs: improve unsupportedoperation results
* git subrepo pull emummc
subrepo:
  subdir:   "emummc"
  merged:   "d12dd546"
upstream:
  origin:   "https://github.com/m4xw/emuMMC "
  branch:   "develop"
  commit:   "d12dd546"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
* util: add boundedmap
* ncm: minor style fixes
* ncm: don't unmount if mounting fails
* lr: bug fixes
* ncm: implement ncm.for-initialize + ncm.for-safemode
* lr: ncm::ProgramId::Invalid -> ncm::InvalidProgramId
* ncm: fix open directory mode on 1.0.0
* ncm: fix fs use, implement more of < 4.0.0 for-initialize/safemode
* ncm: implement packagedcontent -> content for building metadb
* ncm: fix save data flag management
* ncm: address some review suggestions (thanks @leoetlino!)
* updater: use fs bindings
* fs: implement MountCode
* fs: prefer make_unique to operator new
* ncm: implement remaining ContentMetaDatabaseBuilder functionality
Co-authored-by: Michael Scire <SciresM@gmail.com> 
						
					 
					
						2020-03-09 18:03:38 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							1e9368c770 
							
						 
					 
					
						
						
							
							ams: revamp assertion system  
						
						 
						
						
						
					 
					
						2020-03-02 19:51:04 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							7ee4ae460e 
							
						 
					 
					
						
						
							
							find -exec sed -i'' -e 's/2018-2019 Atmo/2018-2020 Atmo/g' {} +  
						
						 
						
						
						
					 
					
						2020-03-02 19:50:40 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							ef5297acb3 
							
						 
					 
					
						
						
							
							Improve buildsystem, split out generic code  
						
						 
						
						
						
					 
					
						2019-12-08 19:17:05 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							5797d753bf 
							
						 
					 
					
						
						
							
							libstratosphere is now just one lib  
						
						 
						
						
						
					 
					
						2019-12-08 17:01:03 -08:00