@@ -35,4 +35,4 @@ If you like, you can [donate by PayPal](https://www.paypal.com/cgi-bin/webscr?cm
 | 
			
		||||
* Eventually 3D displays to get proper 3D output working
 | 
			
		||||
* ... etc ...
 | 
			
		||||
 | 
			
		||||
We also more than gladly accept used 3DS consoles, preferrably ones with firmware 4.5 or lower! If you would like to give yours away, don't hesitate to join our IRC channel #citra on [Freenode](http://webchat.freenode.net/?channels=citra) and talk to neobrain or bunnei. Mind you, IRC is slow-paced, so it might be a while until people reply. If you're in a hurry you can just leave contact details in the channel or via private message and we'll get back to you.
 | 
			
		||||
We also more than gladly accept used 3DS consoles, preferably ones with firmware 4.5 or lower! If you would like to give yours away, don't hesitate to join our IRC channel #citra on [Freenode](http://webchat.freenode.net/?channels=citra) and talk to neobrain or bunnei. Mind you, IRC is slow-paced, so it might be a while until people reply. If you're in a hurry you can just leave contact details in the channel or via private message and we'll get back to you.
 | 
			
		||||
 
 | 
			
		||||
@@ -10,7 +10,7 @@ if ! git diff --cached --check -- $paths_to_check ; then
 | 
			
		||||
    cat<<END
 | 
			
		||||
 | 
			
		||||
Error: This commit would contain trailing spaces or tabs, which is against this repo's policy.
 | 
			
		||||
Please correct those issues before commiting. (Use 'git diff --check' for more details)
 | 
			
		||||
Please correct those issues before committing. (Use 'git diff --check' for more details)
 | 
			
		||||
If you know what you are doing, you can try 'git commit --no-verify' to bypass the check
 | 
			
		||||
END
 | 
			
		||||
    exit 1
 | 
			
		||||
 
 | 
			
		||||
@@ -23,12 +23,12 @@ static size_t CurrentRegionIndex() {
 | 
			
		||||
    // This function only returns a 0 or 1.
 | 
			
		||||
 | 
			
		||||
    if (g_regions[0].frame_counter == 0xFFFFu && g_regions[1].frame_counter != 0xFFFEu) {
 | 
			
		||||
        // Wraparound has occured.
 | 
			
		||||
        // Wraparound has occurred.
 | 
			
		||||
        return 1;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_regions[1].frame_counter == 0xFFFFu && g_regions[0].frame_counter != 0xFFFEu) {
 | 
			
		||||
        // Wraparound has occured.
 | 
			
		||||
        // Wraparound has occurred.
 | 
			
		||||
        return 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -117,7 +117,7 @@ void PipeWrite(DspPipe pipe_number, const std::vector<u8>& buffer) {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        enum class StateChange {
 | 
			
		||||
            Initalize = 0,
 | 
			
		||||
            Initialize = 0,
 | 
			
		||||
            Shutdown = 1,
 | 
			
		||||
            Wakeup = 2,
 | 
			
		||||
            Sleep = 3,
 | 
			
		||||
@@ -130,7 +130,7 @@ void PipeWrite(DspPipe pipe_number, const std::vector<u8>& buffer) {
 | 
			
		||||
        // sleeping and reset it back after wakeup on behalf of the DSP.
 | 
			
		||||
 | 
			
		||||
        switch (static_cast<StateChange>(buffer[0])) {
 | 
			
		||||
        case StateChange::Initalize:
 | 
			
		||||
        case StateChange::Initialize:
 | 
			
		||||
            LOG_INFO(Audio_DSP, "Application has requested initialization of DSP hardware");
 | 
			
		||||
            ResetPipes();
 | 
			
		||||
            AudioPipeWriteStructAddresses();
 | 
			
		||||
 
 | 
			
		||||
@@ -424,7 +424,7 @@ GraphicsVertexShaderWidget::GraphicsVertexShaderWidget(
 | 
			
		||||
            // Create an HBoxLayout to store the widgets used to specify a particular attribute
 | 
			
		||||
            // and store it in a QWidget to allow for easy hiding and unhiding.
 | 
			
		||||
            auto row_layout = new QHBoxLayout;
 | 
			
		||||
            // Remove unecessary padding between rows
 | 
			
		||||
            // Remove unnecessary padding between rows
 | 
			
		||||
            row_layout->setContentsMargins(0, 0, 0, 0);
 | 
			
		||||
 | 
			
		||||
            row_layout->addWidget(new QLabel(tr("Attribute %1").arg(i, 2)));
 | 
			
		||||
@@ -590,7 +590,7 @@ void GraphicsVertexShaderWidget::OnCycleIndexChanged(int index) {
 | 
			
		||||
                    .arg(record.dest_out.w.ToFloat32());
 | 
			
		||||
 | 
			
		||||
    if (record.mask & Pica::Shader::DebugDataRecord::ADDR_REG_OUT)
 | 
			
		||||
        text += tr("Addres Registers: %1, %2\n")
 | 
			
		||||
        text += tr("Address Registers: %1, %2\n")
 | 
			
		||||
                    .arg(record.address_registers[0])
 | 
			
		||||
                    .arg(record.address_registers[1]);
 | 
			
		||||
    if (record.mask & Pica::Shader::DebugDataRecord::CMP_RESULT)
 | 
			
		||||
 
 | 
			
		||||
@@ -136,7 +136,7 @@ void RegistersWidget::UpdateCPSRValues() {
 | 
			
		||||
    cpsr->child(2)->setText(1, QString::number((cpsr_val >> 6) & 1));    // F - FIQ disable
 | 
			
		||||
    cpsr->child(3)->setText(1, QString::number((cpsr_val >> 7) & 1));    // I - IRQ disable
 | 
			
		||||
    cpsr->child(4)->setText(1, QString::number((cpsr_val >> 8) & 1));    // A - Imprecise abort
 | 
			
		||||
    cpsr->child(5)->setText(1, QString::number((cpsr_val >> 9) & 1));    // E - Data endianess
 | 
			
		||||
    cpsr->child(5)->setText(1, QString::number((cpsr_val >> 9) & 1));    // E - Data endianness
 | 
			
		||||
    cpsr->child(6)->setText(1,
 | 
			
		||||
                            QString::number((cpsr_val >> 10) & 0x3F)); // IT - If-Then state (DNM)
 | 
			
		||||
    cpsr->child(7)->setText(1,
 | 
			
		||||
 
 | 
			
		||||
@@ -64,7 +64,7 @@ public:
 | 
			
		||||
 * A specialization of GameListItem for path values.
 | 
			
		||||
 * This class ensures that for every full path value it holds, a correct string representation
 | 
			
		||||
 * of just the filename (with no extension) will be displayed to the user.
 | 
			
		||||
 * If this class recieves valid SMDH data, it will also display game icons and titles.
 | 
			
		||||
 * If this class receives valid SMDH data, it will also display game icons and titles.
 | 
			
		||||
 */
 | 
			
		||||
class GameListItemPath : public GameListItem {
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -31,7 +31,7 @@ static FORCE_INLINE u64 fmix64(u64 k) {
 | 
			
		||||
    return k;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// This is the 128-bit variant of the MurmurHash3 hash function that is targetted for 64-bit
 | 
			
		||||
// This is the 128-bit variant of the MurmurHash3 hash function that is targeted for 64-bit
 | 
			
		||||
// platforms (MurmurHash3_x64_128). It was taken from:
 | 
			
		||||
// https://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp
 | 
			
		||||
void MurmurHash3_128(const void* key, int len, u32 seed, void* out) {
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,7 @@ struct Entry;
 | 
			
		||||
 *
 | 
			
		||||
 * @param path The input file path as a null-terminated string
 | 
			
		||||
 * @param root The name of the root source directory as a null-terminated string. Path up to and
 | 
			
		||||
 *             including the last occurence of this name will be stripped
 | 
			
		||||
 *             including the last occurrence of this name will be stripped
 | 
			
		||||
 * @return A pointer to the same string passed as `path`, but starting at the trimmed portion
 | 
			
		||||
 */
 | 
			
		||||
const char* TrimSourcePath(const char* path, const char* root = "src");
 | 
			
		||||
 
 | 
			
		||||
@@ -23,7 +23,7 @@ namespace Kernel {
 | 
			
		||||
 | 
			
		||||
static MemoryRegionInfo memory_regions[3];
 | 
			
		||||
 | 
			
		||||
/// Size of the APPLICATION, SYSTEM and BASE memory regions (respectively) for each sytem
 | 
			
		||||
/// Size of the APPLICATION, SYSTEM and BASE memory regions (respectively) for each system
 | 
			
		||||
/// memory configuration type.
 | 
			
		||||
static const u32 memory_region_sizes[8][3] = {
 | 
			
		||||
    // Old 3DS layouts
 | 
			
		||||
 
 | 
			
		||||
@@ -204,7 +204,7 @@ static std::tuple<u32*, u32*> GetWaitSynchTimeoutParameterRegister(Thread* threa
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Updates the WaitSynchronization timeout paramter according to the difference
 | 
			
		||||
 * Updates the WaitSynchronization timeout parameter according to the difference
 | 
			
		||||
 * between ticks of the last WaitSynchronization call and the incoming one.
 | 
			
		||||
 * @param timeout_low a pointer to the register for the low part of the timeout parameter
 | 
			
		||||
 * @param timeout_high a pointer to the register for the high part of the timeout parameter
 | 
			
		||||
 
 | 
			
		||||
@@ -1227,7 +1227,7 @@ ResultCode CROHelper::Link(VAddr crs_address, bool link_on_load_bug_fix) {
 | 
			
		||||
            // The bug itself is:
 | 
			
		||||
            // If a relocation target is in .data segment, it will relocate to the
 | 
			
		||||
            // user-specified buffer. But if this is linking during loading,
 | 
			
		||||
            // the .data segment hasn't been tranfer from CRO to the buffer,
 | 
			
		||||
            // the .data segment hasn't been transfer from CRO to the buffer,
 | 
			
		||||
            // thus the relocation will be overwritten by data transfer.
 | 
			
		||||
            // To fix this bug, we need temporarily restore the old .data segment
 | 
			
		||||
            // offset and apply imported symbols.
 | 
			
		||||
 
 | 
			
		||||
@@ -163,7 +163,7 @@ ResultStatus AppLoader_NCCH::LoadExec() {
 | 
			
		||||
        Kernel::g_current_process->ideal_processor =
 | 
			
		||||
            exheader_header.arm11_system_local_caps.ideal_processor;
 | 
			
		||||
 | 
			
		||||
        // Copy data while converting endianess
 | 
			
		||||
        // Copy data while converting endianness
 | 
			
		||||
        std::array<u32, ARRAY_SIZE(exheader_header.arm11_kernel_caps.descriptors)> kernel_caps;
 | 
			
		||||
        std::copy_n(exheader_header.arm11_kernel_caps.descriptors, kernel_caps.size(),
 | 
			
		||||
                    begin(kernel_caps));
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@
 | 
			
		||||
#include "core/loader/loader.h"
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
/// NCCH header (Note: "NCCH" appears to be a publically unknown acronym)
 | 
			
		||||
/// NCCH header (Note: "NCCH" appears to be a publicly unknown acronym)
 | 
			
		||||
 | 
			
		||||
struct NCCH_Header {
 | 
			
		||||
    u8 signature[0x100];
 | 
			
		||||
 
 | 
			
		||||
@@ -292,7 +292,7 @@ static void WritePicaReg(u32 id, u32 value, u32 mask) {
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // Retreive vertex from register data
 | 
			
		||||
            // Retrieve vertex from register data
 | 
			
		||||
            Shader::OutputVertex output_vertex = output_registers.ToVertex(regs.vs);
 | 
			
		||||
 | 
			
		||||
            // Send to renderer
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user