mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-09-02 06:22:42 +02:00
Update to v106r84 release.
byuu says: Changelog: - fixed a few TLCS900H CPU and disassembler bugs - hooked up a basic Neo Geo Pocket emulator skeleton and memory map; can run a few instructions from the BIOS - emulated the flash memory used by Neo Geo Pocket games - added sourcery to the higan source archives - fixed ternary expressions in sfc/ppu-fast [hex_usr]
This commit is contained in:
@@ -28,10 +28,10 @@ template<uint Precision = 64> struct Integer {
|
||||
inline auto& operator++() { data = mask(data + 1); return *this; }
|
||||
inline auto& operator--() { data = mask(data - 1); return *this; }
|
||||
|
||||
inline auto operator!() const { return Integer{!data}; }
|
||||
inline auto operator~() const { return Integer{~data}; }
|
||||
inline auto operator+() const { return Integer<>{+(int64_t)data}; }
|
||||
inline auto operator-() const { return Integer<>{-(int64_t)data}; }
|
||||
inline auto operator!() const { return !data; }
|
||||
inline auto operator~() const { return Integer<>{mask(~data)}; }
|
||||
inline auto operator+() const { return Integer<>{+data}; }
|
||||
inline auto operator-() const { return Integer<>{data == sign() ? data : -data}; }
|
||||
|
||||
#define lhs data
|
||||
#define rhs value
|
||||
@@ -49,11 +49,6 @@ template<uint Precision = 64> struct Integer {
|
||||
#undef lhs
|
||||
#undef rhs
|
||||
|
||||
#define lhs (int64_t)data
|
||||
#define rhs value
|
||||
#undef lhs
|
||||
#undef rhs
|
||||
|
||||
//warning: this does not and cannot short-circuit; value is always evaluated
|
||||
template<typename T> inline auto orElse(const T& value) { return Integer<>{data ? data : value}; }
|
||||
|
||||
|
@@ -26,9 +26,9 @@ template<uint Precision = 64> struct Natural {
|
||||
inline auto& operator++() { data = mask(data + 1); return *this; }
|
||||
inline auto& operator--() { data = mask(data - 1); return *this; }
|
||||
|
||||
inline auto operator!() const { return Natural{!data}; }
|
||||
inline auto operator~() const { return Natural{~data}; }
|
||||
inline auto operator+() const { return Natural<>{+(uint64_t)data}; }
|
||||
inline auto operator!() const { return !data; }
|
||||
inline auto operator~() const { return Natural<>{mask(~data)}; }
|
||||
inline auto operator+() const { return Natural<>{+data}; }
|
||||
inline auto operator-() const { return Natural<>{-(uint64_t)data}; }
|
||||
|
||||
#define lhs data
|
||||
|
Reference in New Issue
Block a user