<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string-array name="formats">
        <item >Binary</item>
        <item >Decimal</item>
        <item >Hexadecimal</item>
    </string-array>
    
    <string-array name="performance_types">
        <item >Instruction</item>
        <item >CPU</item>
    </string-array>
    
    <string name="pc">Program Counter</string>
    <string name="pc_description">Contains the address of the instruction being executed.\nThe address is updated (with the value at the input) at the clock transition.</string>
    <string name="regbank">Register bank</string>
    <string name="regbank_description">Holds all the MIPS registers and provides read/write to them.\nThe values of the ReadReg1 and ReadReg2 registers are read to the outputs.\nWriteData is written to the WriteReg register at the clock transition if RegWrite is enabled.</string>
    <string name="instruction_memory">Instruction memory</string>
    <string name="instruction_memory_description">Contains the program being executed.</string>
    <string name="control_unit">Control unit</string>
    <string name="control_unit_description">Controls the execution of the instructions.\nThe input (opcode of the instruction) is decoded to generate the correct control signals.\nThese signals are used to control the other components of the datapath.</string>
    <string name="add">Adder</string>
    <string name="add_description">Adds the values of the inputs.</string>
    <string name="not">NOT port</string>
    <string name="not_description">Negates the value of the input.</string>
    <string name="and">AND port</string>
    <string name="and_description">Executes a logical AND on the inputs.</string>
    <string name="or">OR port</string>
    <string name="or_description">Executes a logical OR on the inputs.</string>
    <string name="xor">XOR port</string>
    <string name="xor_description">Executes a logical XOR on the inputs.</string>
    <string name="distributor">Distributor</string>
    <string name="distributor_description">Distributes the input\'s bits through the various outputs.</string>
    <string name="multiplexer">Multiplexer</string>
    <string name="multiplexer_description">Choses an input value according to the selector value.</string>
    <string name="constant">Constant</string>
    <string name="constant_description">A constant value.</string>
    <string name="sign_extend">Sign extend</string>
    <string name="sign_extend_description">Extends the value of the input with its sign.\nIf the input is negative, the output will also be negative.</string>
    <string name="zero_extend">Zero extend</string>
    <string name="zero_extend_description">Extends the value of the input with zeros.\nIf the input is negative, the output will have a positive value.</string>
    <string name="shift_left">Shift left</string>
    <string name="shift_left_description">Shifts the input\'s bits some positions to the left.</string>
    <string name="fork">Fork</string>
    <string name="fork_description">Forks a wire to connect it to multiple components.</string>
    <string name="concatenator">Concatenator</string>
    <string name="concatenator_description">Concatenates the values of the two inputs.\nThe bits of the first input will be the most significant bits and the bits of the second input will be the less significant bits.</string>
    <string name="alu_control">ALU controller</string>
    <string name="alu_control_description">Uses the values of its two inputs to determine the operation of the ALU.</string>
    <string name="alu">Arithmetic and Logic Unit</string>
    <string name="alu_description">Performs arithmetic operations.\nThe two outputs are the result of the operation and whether the result is zero.</string>
    <string name="extended_alu">Arithmetic and Logic Unit (extended)</string>
    <string name="extended_alu_description">Performs arithmetic operations.\nThe two outputs are the result of the operation and whether the result is zero.\nThis ALU supports multiplications and divisions, and stores the HI and LO "registers" used by these operations.</string>
    <string name="data_memory">Data memory</string>
    <string name="data_memory_description">RAM memory with several positions to store data temporarily.\nIf MemRead is active, the specified memory position is read from.\nIf MemWrite is active, WriteData is written to the memory position at the clock transition.</string>
    <string name="pipeline_register">Pipeline register</string>
    <string name="pipeline_register_description">Register that separates two pipeline stages.\nThe values that transition to the next stage are stored here temporarily if Write is active.\nIf Flush is active, all values are set to zero, inserting a NOP instruction.</string>
    <string name="forwarding_unit">Forwarding unit</string>
    <string name="forwarding_unit_description">Solves some data hazards by forwarding results from the MEM and WB stages back.\nThere is a forward when the value of a register used in the EX stage is determined in the next stages by a previous instruction.</string>
    <string name="hazard_detection_unit">Hazard detection unit</string>
    <string name="hazard_detection_unit_description">Detects when a stall should occur.\nThere is a stall when the value of a register used in the EX stage is loaded from memory in the MEM stage by the previous instruction.</string>
    
    <string name="app_name" translatable="false">DrMIPS</string>
    <string name="app_description">Educational simulator of the MIPS processor.</string>
    <string name="settings">Settings</string>
    <string name="about">About</string>
    <string name="by">Created by</string>
    <string name="code">Code</string>
    <string name="file">File</string>
    <string name="newFile">New</string>
    <string name="open">Open</string>
    <string name="save">Save</string>
    <string name="save_as">Save as</string>
    <string name="sdcard_not_available">External memory not available! Using internal private memory instead.</string>
    <string name="error_saving_file">Error saving file #1!</string>
    <string name="enter_filename">Enter the file name:</string>
    <string name="file_saved">File saved.</string>
    <string name="confirm_replace">The file #1 already exists. Do you want to replace it?</string>
    <string name="error_opening_file">Error opening file #1!</string>
    <string name="no_files_to_open">There are no files to open.</string>
    <string name="delete">Delete</string>
    <string name="confirm_delete">Are you sure you want to delete the file #1?</string>
    <string name="file_deleted">File deleted.</string>
    <string name="error_deleting_file">Error deleting file!</string>
    <string name="datapath">Datapath</string>
    <string name="load_cpu">Load CPU</string>
    <string name="invalid_file">Invalid file!</string>
    <string name="assemble">Assemble</string>
    <string name="step" >Step</string>
    <string name="back_step">Back step</string>
    <string name="line">Line #1</string>
    <string name="duplicated_label">Duplicated label &quot;#1&quot;!</string>
    <string name="invalid_label">Invalid label &quot;#1&quot;!</string>
    <string name="invalid_arg_int">Invalid argument! Expected an integer, found #1.</string>
    <string name="invalid_arg_reg">Invalid argument! Expected a register, found #1.</string>
    <string name="invalid_arg_data">Invalid argument! Expected &quot;address&quot; or &quot;base($offset)&quot;, found &quot;#1&quot;.</string>
    <string name="unknown_data_directive">Unknown data type directive &quot;#1&quot;!</string>
    <string name="unknown_instruction">Unknown instruction &quot;#1&quot;!</string>
    <string name="unknown_label">Unknown label &quot;#1&quot;!</string>
    <string name="wrong_no_args">Wrong number of arguments! Expected #1, found #2.</string>
    <string name="invalid_arg_positive_int">Invalid argument! Expected a positive integer, found #1.</string>
    <string name="data_segment_without_data_memory">Data segment not available when using a CPU without data memory!</string>
    <string name="address">Address</string>
    <string name="assembled">Assembled</string>
    <string name="assembled_code">Assembled code</string>
    <string name="type_x">#1-type</string>
    <string name="format">Format:</string>
    <string name="registers">Registers</string>
    <string name="register">Register</string>
    <string name="value">Value</string>
    <string name="edit_value">Edit #1:</string>
    <string name="invalid_value">Invalid value!</string>
    <string name="dark_theme">Dark theme</string>
    <string name="synchronous">Synchronous</string>
    <string name="inputs">Inputs</string>
    <string name="outputs">Outputs</string>
    <string name="latency">Latency</string>
    <string name="latency_of_x">Latency of #1</string>
    <string name="control_path">Control path</string>
    <string name="arrows_in_wires">Arrows in wires</string>
    <string name="performance_mode">Performance mode</string>
    <string name="long_press_to_change">long-press to change</string>
    <string name="overlayed_data">Data in inputs and outputs</string>
    <string name="restart">Restart</string>
    <string name="run">Run</string>
    <string name="possible_infinite_loop">Possible infinite loop detected (more than #1 cycles executed)!</string>
    <string name="help">Help</string>
    <string name="instructions">Instructions</string>
    <string name="pseudo_instructions">Pseudo-instructions</string>
    <string name="supported_instructions">Instructions supported by the CPU</string>
    <string name="directives">Directives</string>
    <string name="data_directive"># Starts the data segment</string>
    <string name="space_directive"># Reserves bytes in data memory</string>
    <string name="text_directive"># Starts the text segment</string>
    <string name="word_directive"># Stores words in data memory</string>
    <string name="data_mode">Data mode</string>
    <string name="normal_wire">Normal wire</string>
    <string name="wire_in_critical_path">Wire in critical path</string>
    <string name="control_path_wire">Control path wire</string>
    <string name="irrelevant_wire">Irrelevant wire</string>
    <string name="advised_to_display_control_path">It is advised to display the control path.</string>
    <string name="filename">File name</string>
    <string name="confirm_exit">Are you sure you want to exit the application?</string>
    <string name="for_dissertation">for the Master\'s Dissertation of MIEIC</string>
    <string name="license">License</string>
    <string name="remove_latencies">Remove latencies</string>
    <string name="restore_latencies">Restore latencies</string>
    <string name="statistics">Statistics</string>
    <string name="clock_period">Clock period:</string>
    <string name="clock_frequency">Clock frequency:</string>
    <string name="executed_cycles">Executed cycles:</string>
    <string name="execution_time">Execution time:</string>
    <string name="executed_instructions">Executed instructions:</string>
    <string name="cpi">CPI:</string>
    <string name="forwards">Forwards:</string>
    <string name="stalls">Stalls:</string>
    <string name="operation">Operation</string>
    <string name="register_not_editable">Register #1 is not editable!</string>
    <string name="performance">Performance:</string>
    <string name="credits">Credits</string>
	<string name="enable">Enable</string>
	<string name="show_names">Show names</string>
	<string name="show_for_all_components">Show for all components</string>

</resources>
