mirror of
https://github.com/transistorfet/moa.git
synced 2024-11-28 20:50:13 +00:00
Added Z80 timings, and enabled check in rad tests
This commit is contained in:
parent
f205e231b6
commit
64b18662d5
@ -9,7 +9,6 @@ pub struct Z80Decoder {
|
|||||||
pub start: u16,
|
pub start: u16,
|
||||||
pub end: u16,
|
pub end: u16,
|
||||||
pub instruction: Instruction,
|
pub instruction: Instruction,
|
||||||
pub execution_time: u16,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for Z80Decoder {
|
impl Default for Z80Decoder {
|
||||||
@ -19,7 +18,6 @@ impl Default for Z80Decoder {
|
|||||||
start: 0,
|
start: 0,
|
||||||
end: 0,
|
end: 0,
|
||||||
instruction: Instruction::NOP,
|
instruction: Instruction::NOP,
|
||||||
execution_time: 0,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -29,7 +27,6 @@ impl Z80Decoder {
|
|||||||
self.clock = clock;
|
self.clock = clock;
|
||||||
self.start = start;
|
self.start = start;
|
||||||
self.end = start;
|
self.end = start;
|
||||||
self.execution_time = 0;
|
|
||||||
self.instruction = self.decode_one(memory)?;
|
self.instruction = self.decode_one(memory)?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
@ -509,20 +506,18 @@ impl Z80Decoder {
|
|||||||
fn read_instruction_byte(&mut self, device: &mut dyn Addressable) -> Result<u8, Error> {
|
fn read_instruction_byte(&mut self, device: &mut dyn Addressable) -> Result<u8, Error> {
|
||||||
let byte = device.read_u8(self.clock, self.end as Address)?;
|
let byte = device.read_u8(self.clock, self.end as Address)?;
|
||||||
self.end = self.end.wrapping_add(1);
|
self.end = self.end.wrapping_add(1);
|
||||||
self.execution_time += 4;
|
|
||||||
Ok(byte)
|
Ok(byte)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn read_instruction_word(&mut self, device: &mut dyn Addressable) -> Result<u16, Error> {
|
fn read_instruction_word(&mut self, device: &mut dyn Addressable) -> Result<u16, Error> {
|
||||||
let word = device.read_leu16(self.clock, self.end as Address)?;
|
let word = device.read_leu16(self.clock, self.end as Address)?;
|
||||||
self.end = self.end.wrapping_add(2);
|
self.end = self.end.wrapping_add(2);
|
||||||
self.execution_time += 8;
|
|
||||||
Ok(word)
|
Ok(word)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn format_instruction_bytes(&mut self, memory: &mut dyn Addressable) -> String {
|
pub fn format_instruction_bytes(&mut self, memory: &mut dyn Addressable) -> String {
|
||||||
let ins_data: String =
|
let ins_data: String =
|
||||||
(0..(self.end - self.start)).map(|offset|
|
(0..self.end.saturating_sub(self.start)).map(|offset|
|
||||||
format!("{:02x} ", memory.read_u8(self.clock, (self.start + offset) as Address).unwrap())
|
format!("{:02x} ", memory.read_u8(self.clock, (self.start + offset) as Address).unwrap())
|
||||||
).collect();
|
).collect();
|
||||||
ins_data
|
ins_data
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
|
|
||||||
use moa_core::{System, Error, ErrorType, ClockDuration, Address, Steppable, Addressable, Interruptable, Debuggable, Transmutable, read_beu16, write_beu16};
|
use moa_core::{System, Error, ErrorType, ClockTime, ClockDuration, Address, Steppable, Addressable, Interruptable, Debuggable, Transmutable, read_beu16, write_beu16};
|
||||||
|
|
||||||
use crate::instructions::{Condition, Instruction, LoadTarget, Target, Register, InterruptMode, RegisterPair, IndexRegister, SpecialRegister, IndexRegisterHalf, Size, Direction, UndocumentedCopy};
|
use crate::instructions::{Condition, Instruction, LoadTarget, Target, Register, InterruptMode, RegisterPair, IndexRegister, SpecialRegister, IndexRegisterHalf, Size, Direction, UndocumentedCopy};
|
||||||
use crate::state::{Z80, Status, Flags};
|
use crate::state::{Z80, Status, Flags};
|
||||||
|
use crate::timing::Z80InstructionCycles;
|
||||||
|
|
||||||
|
|
||||||
const DEV_NAME: &str = "z80-cpu";
|
const DEV_NAME: &str = "z80-cpu";
|
||||||
@ -53,9 +54,24 @@ impl Transmutable for Z80 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#[derive(Clone)]
|
||||||
|
pub struct Z80Executor {
|
||||||
|
pub current_clock: ClockTime,
|
||||||
|
pub took_branch: bool,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Z80Executor {
|
||||||
|
pub fn at_time(current_clock: ClockTime) -> Self {
|
||||||
|
Self {
|
||||||
|
current_clock,
|
||||||
|
took_branch: false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl Z80 {
|
impl Z80 {
|
||||||
pub fn step_internal(&mut self, system: &System) -> Result<u16, Error> {
|
pub fn step_internal(&mut self, system: &System) -> Result<u16, Error> {
|
||||||
self.current_clock = system.clock;
|
self.executor = Z80Executor::at_time(system.clock);
|
||||||
match self.state.status {
|
match self.state.status {
|
||||||
Status::Init => self.init(),
|
Status::Init => self.init(),
|
||||||
Status::Halted => Err(Error::new("CPU stopped")),
|
Status::Halted => Err(Error::new("CPU stopped")),
|
||||||
@ -63,7 +79,6 @@ impl Z80 {
|
|||||||
match self.cycle_one(system) {
|
match self.cycle_one(system) {
|
||||||
Ok(clocks) => Ok(clocks),
|
Ok(clocks) => Ok(clocks),
|
||||||
Err(Error { err: ErrorType::Processor, .. }) => {
|
Err(Error { err: ErrorType::Processor, .. }) => {
|
||||||
//self.exception(system, native as u8, false)?;
|
|
||||||
Ok(4)
|
Ok(4)
|
||||||
},
|
},
|
||||||
Err(err) => Err(err),
|
Err(err) => Err(err),
|
||||||
@ -86,13 +101,13 @@ impl Z80 {
|
|||||||
pub fn cycle_one(&mut self, system: &System) -> Result<u16, Error> {
|
pub fn cycle_one(&mut self, system: &System) -> Result<u16, Error> {
|
||||||
self.decode_next()?;
|
self.decode_next()?;
|
||||||
self.execute_current()?;
|
self.execute_current()?;
|
||||||
//self.check_pending_interrupts(system)?;
|
|
||||||
self.check_breakpoints(system);
|
self.check_breakpoints(system);
|
||||||
Ok(self.decoder.execution_time)
|
Ok(Z80InstructionCycles::from_instruction(&self.decoder.instruction)?
|
||||||
|
.calculate_cycles(self.executor.took_branch))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn decode_next(&mut self) -> Result<(), Error> {
|
pub fn decode_next(&mut self) -> Result<(), Error> {
|
||||||
self.decoder.decode_at(&mut self.port, self.current_clock, self.state.pc)?;
|
self.decoder.decode_at(&mut self.port, self.executor.current_clock, self.state.pc)?;
|
||||||
self.increment_refresh(self.decoder.end.saturating_sub(self.decoder.start) as u8);
|
self.increment_refresh(self.decoder.end.saturating_sub(self.decoder.start) as u8);
|
||||||
self.state.pc = self.decoder.end;
|
self.state.pc = self.decoder.end;
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -279,6 +294,7 @@ impl Z80 {
|
|||||||
|
|
||||||
fn execute_callcc(&mut self, cond: Condition, addr: u16) -> Result<(), Error> {
|
fn execute_callcc(&mut self, cond: Condition, addr: u16) -> Result<(), Error> {
|
||||||
if self.get_current_condition(cond) {
|
if self.get_current_condition(cond) {
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.push_word(self.decoder.end)?;
|
self.push_word(self.decoder.end)?;
|
||||||
self.state.pc = addr;
|
self.state.pc = addr;
|
||||||
}
|
}
|
||||||
@ -395,6 +411,7 @@ impl Z80 {
|
|||||||
self.set_register_value(Register::B, result);
|
self.set_register_value(Register::B, result);
|
||||||
|
|
||||||
if result != 0 {
|
if result != 0 {
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.state.pc = self.state.pc.wrapping_add_signed(offset as i16);
|
self.state.pc = self.state.pc.wrapping_add_signed(offset as i16);
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -528,6 +545,7 @@ impl Z80 {
|
|||||||
|
|
||||||
fn execute_jpcc(&mut self, cond: Condition, addr: u16) -> Result<(), Error> {
|
fn execute_jpcc(&mut self, cond: Condition, addr: u16) -> Result<(), Error> {
|
||||||
if self.get_current_condition(cond) {
|
if self.get_current_condition(cond) {
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.state.pc = addr;
|
self.state.pc = addr;
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -540,6 +558,7 @@ impl Z80 {
|
|||||||
|
|
||||||
fn execute_jrcc(&mut self, cond: Condition, offset: i8) -> Result<(), Error> {
|
fn execute_jrcc(&mut self, cond: Condition, offset: i8) -> Result<(), Error> {
|
||||||
if self.get_current_condition(cond) {
|
if self.get_current_condition(cond) {
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.state.pc = self.state.pc.wrapping_add_signed(offset as i16);
|
self.state.pc = self.state.pc.wrapping_add_signed(offset as i16);
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -593,6 +612,7 @@ impl Z80 {
|
|||||||
if (self.decoder.instruction == Instruction::LDIR || self.decoder.instruction == Instruction::LDDR)
|
if (self.decoder.instruction == Instruction::LDIR || self.decoder.instruction == Instruction::LDDR)
|
||||||
&& count != 0
|
&& count != 0
|
||||||
{
|
{
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.state.pc -= 2;
|
self.state.pc -= 2;
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -685,6 +705,7 @@ impl Z80 {
|
|||||||
|
|
||||||
fn execute_retcc(&mut self, cond: Condition) -> Result<(), Error> {
|
fn execute_retcc(&mut self, cond: Condition) -> Result<(), Error> {
|
||||||
if self.get_current_condition(cond) {
|
if self.get_current_condition(cond) {
|
||||||
|
self.executor.took_branch = true;
|
||||||
self.state.pc = self.pop_word()?;
|
self.state.pc = self.pop_word()?;
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -1083,28 +1104,28 @@ impl Z80 {
|
|||||||
|
|
||||||
fn read_port_u8(&mut self, addr: u16) -> Result<u8, Error> {
|
fn read_port_u8(&mut self, addr: u16) -> Result<u8, Error> {
|
||||||
self.increment_refresh(1);
|
self.increment_refresh(1);
|
||||||
self.port.read_u8(self.current_clock, addr as Address)
|
self.port.read_u8(self.executor.current_clock, addr as Address)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn write_port_u8(&mut self, addr: u16, value: u8) -> Result<(), Error> {
|
fn write_port_u8(&mut self, addr: u16, value: u8) -> Result<(), Error> {
|
||||||
self.increment_refresh(1);
|
self.increment_refresh(1);
|
||||||
self.port.write_u8(self.current_clock, addr as Address, value)
|
self.port.write_u8(self.executor.current_clock, addr as Address, value)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn read_port_u16(&mut self, addr: u16) -> Result<u16, Error> {
|
fn read_port_u16(&mut self, addr: u16) -> Result<u16, Error> {
|
||||||
self.increment_refresh(2);
|
self.increment_refresh(2);
|
||||||
self.port.read_leu16(self.current_clock, addr as Address)
|
self.port.read_leu16(self.executor.current_clock, addr as Address)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn write_port_u16(&mut self, addr: u16, value: u16) -> Result<(), Error> {
|
fn write_port_u16(&mut self, addr: u16, value: u16) -> Result<(), Error> {
|
||||||
self.increment_refresh(2);
|
self.increment_refresh(2);
|
||||||
self.port.write_leu16(self.current_clock, addr as Address, value)
|
self.port.write_leu16(self.executor.current_clock, addr as Address, value)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn read_ioport_value(&mut self, upper: u8, lower: u8) -> Result<u8, Error> {
|
fn read_ioport_value(&mut self, upper: u8, lower: u8) -> Result<u8, Error> {
|
||||||
let addr = ((upper as Address) << 8) | (lower as Address);
|
let addr = ((upper as Address) << 8) | (lower as Address);
|
||||||
if let Some(io) = self.ioport.as_mut() {
|
if let Some(io) = self.ioport.as_mut() {
|
||||||
Ok(io.read_u8(self.current_clock, addr)?)
|
Ok(io.read_u8(self.executor.current_clock, addr)?)
|
||||||
} else {
|
} else {
|
||||||
Ok(0)
|
Ok(0)
|
||||||
}
|
}
|
||||||
@ -1113,7 +1134,7 @@ impl Z80 {
|
|||||||
fn write_ioport_value(&mut self, upper: u8, lower: u8, value: u8) -> Result<(), Error> {
|
fn write_ioport_value(&mut self, upper: u8, lower: u8, value: u8) -> Result<(), Error> {
|
||||||
let addr = ((upper as Address) << 8) | (lower as Address);
|
let addr = ((upper as Address) << 8) | (lower as Address);
|
||||||
if let Some(io) = self.ioport.as_mut() {
|
if let Some(io) = self.ioport.as_mut() {
|
||||||
io.write_u8(self.current_clock, addr, value)?
|
io.write_u8(self.executor.current_clock, addr, value)?
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
@ -201,4 +201,14 @@ impl From<u8> for InterruptMode {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl RegisterPair {
|
||||||
|
pub(crate) fn is_index_reg(&self) -> bool {
|
||||||
|
match self {
|
||||||
|
RegisterPair::IX |
|
||||||
|
RegisterPair::IY => true,
|
||||||
|
_ => false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
|
|
||||||
pub mod state;
|
pub mod debugger;
|
||||||
pub mod decode;
|
pub mod decode;
|
||||||
pub mod execute;
|
pub mod execute;
|
||||||
pub mod debugger;
|
|
||||||
pub mod instructions;
|
pub mod instructions;
|
||||||
|
pub mod state;
|
||||||
|
pub mod timing;
|
||||||
|
|
||||||
pub use self::state::{Z80, Z80Type};
|
pub use self::state::{Z80, Z80Type};
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@ use moa_core::{ClockTime, Address, BusPort, Signal, Frequency};
|
|||||||
|
|
||||||
use crate::decode::Z80Decoder;
|
use crate::decode::Z80Decoder;
|
||||||
use crate::debugger::Z80Debugger;
|
use crate::debugger::Z80Debugger;
|
||||||
|
use crate::execute::Z80Executor;
|
||||||
use crate::instructions::{Register, InterruptMode};
|
use crate::instructions::{Register, InterruptMode};
|
||||||
|
|
||||||
|
|
||||||
@ -93,11 +94,11 @@ pub struct Z80 {
|
|||||||
pub state: Z80State,
|
pub state: Z80State,
|
||||||
pub decoder: Z80Decoder,
|
pub decoder: Z80Decoder,
|
||||||
pub debugger: Z80Debugger,
|
pub debugger: Z80Debugger,
|
||||||
|
pub executor: Z80Executor,
|
||||||
pub port: BusPort,
|
pub port: BusPort,
|
||||||
pub ioport: Option<BusPort>,
|
pub ioport: Option<BusPort>,
|
||||||
pub reset: Signal<bool>,
|
pub reset: Signal<bool>,
|
||||||
pub bus_request: Signal<bool>,
|
pub bus_request: Signal<bool>,
|
||||||
pub current_clock: ClockTime,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Z80 {
|
impl Z80 {
|
||||||
@ -108,11 +109,11 @@ impl Z80 {
|
|||||||
state: Z80State::default(),
|
state: Z80State::default(),
|
||||||
decoder: Z80Decoder::default(),
|
decoder: Z80Decoder::default(),
|
||||||
debugger: Z80Debugger::default(),
|
debugger: Z80Debugger::default(),
|
||||||
|
executor: Z80Executor::at_time(ClockTime::START),
|
||||||
port,
|
port,
|
||||||
ioport,
|
ioport,
|
||||||
reset: Signal::new(false),
|
reset: Signal::new(false),
|
||||||
bus_request: Signal::new(false),
|
bus_request: Signal::new(false),
|
||||||
current_clock: ClockTime::START,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,6 +122,7 @@ impl Z80 {
|
|||||||
self.state = Z80State::default();
|
self.state = Z80State::default();
|
||||||
self.decoder = Z80Decoder::default();
|
self.decoder = Z80Decoder::default();
|
||||||
self.debugger = Z80Debugger::default();
|
self.debugger = Z80Debugger::default();
|
||||||
|
self.executor = Z80Executor::at_time(ClockTime::START);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn dump_state(&mut self, clock: ClockTime) {
|
pub fn dump_state(&mut self, clock: ClockTime) {
|
||||||
|
299
emulator/cpus/z80/src/timing.rs
Normal file
299
emulator/cpus/z80/src/timing.rs
Normal file
@ -0,0 +1,299 @@
|
|||||||
|
|
||||||
|
use moa_core::Error;
|
||||||
|
|
||||||
|
use crate::instructions::{Instruction, Target, LoadTarget, RegisterPair};
|
||||||
|
|
||||||
|
pub enum Z80InstructionCycles {
|
||||||
|
Single(u16),
|
||||||
|
Branch {
|
||||||
|
taken: u16,
|
||||||
|
not_taken: u16
|
||||||
|
},
|
||||||
|
Repeating {
|
||||||
|
repeating: u16,
|
||||||
|
terminating: u16,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Z80InstructionCycles {
|
||||||
|
pub fn calculate_cycles(&self, took_branch: bool) -> u16 {
|
||||||
|
match self {
|
||||||
|
Z80InstructionCycles::Single(cycles) => *cycles,
|
||||||
|
|
||||||
|
Z80InstructionCycles::Branch { taken, not_taken } => if took_branch { *taken } else { *not_taken },
|
||||||
|
|
||||||
|
Z80InstructionCycles::Repeating { repeating, terminating } => if took_branch { *repeating } else { *terminating },
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn from_instruction(instruction: &Instruction) -> Result<Z80InstructionCycles, Error> {
|
||||||
|
let cycles = match instruction {
|
||||||
|
Instruction::ADCa(target) |
|
||||||
|
Instruction::ADDa(target) |
|
||||||
|
Instruction::AND(target) |
|
||||||
|
Instruction::CP(target) |
|
||||||
|
Instruction::SBCa(target) |
|
||||||
|
Instruction::SUB(target) |
|
||||||
|
Instruction::OR(target) |
|
||||||
|
Instruction::XOR(target) => {
|
||||||
|
match target {
|
||||||
|
// TODO the undocumented DD version of this instruction is actually 8 cycles
|
||||||
|
Target::DirectReg(_) => 4,
|
||||||
|
Target::IndirectReg(_) => 7,
|
||||||
|
Target::Immediate(_) => 7,
|
||||||
|
Target::IndirectOffset(_, _) => 19,
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::ADC16(_, _) |
|
||||||
|
Instruction::SBC16(_, _) => 15,
|
||||||
|
|
||||||
|
Instruction::ADD16(dest_pair, _) => {
|
||||||
|
if !dest_pair.is_index_reg() {
|
||||||
|
11
|
||||||
|
} else {
|
||||||
|
15
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::BIT(_, target) => {
|
||||||
|
match target {
|
||||||
|
Target::DirectReg(_) => 8,
|
||||||
|
Target::IndirectReg(_) => 12,
|
||||||
|
Target::IndirectOffset(_, _) => 20,
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::CALL(_) => 17,
|
||||||
|
|
||||||
|
Instruction::CALLcc(_, _) => {
|
||||||
|
return Ok(Z80InstructionCycles::Branch {
|
||||||
|
taken: 17,
|
||||||
|
not_taken: 10,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::CCF => 4,
|
||||||
|
|
||||||
|
Instruction::CPD |
|
||||||
|
Instruction::CPI |
|
||||||
|
Instruction::IND |
|
||||||
|
Instruction::INI |
|
||||||
|
Instruction::LDD |
|
||||||
|
Instruction::LDI |
|
||||||
|
Instruction::OUTD |
|
||||||
|
Instruction::OUTI => 16,
|
||||||
|
|
||||||
|
Instruction::CPDR |
|
||||||
|
Instruction::CPIR |
|
||||||
|
Instruction::INDR |
|
||||||
|
Instruction::INIR |
|
||||||
|
Instruction::LDDR |
|
||||||
|
Instruction::LDIR |
|
||||||
|
Instruction::OTDR |
|
||||||
|
Instruction::OTIR => {
|
||||||
|
return Ok(Z80InstructionCycles::Repeating {
|
||||||
|
repeating: 21,
|
||||||
|
terminating: 16,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::CPL => 4,
|
||||||
|
Instruction::DAA => 4,
|
||||||
|
|
||||||
|
Instruction::DEC8(target) |
|
||||||
|
Instruction::INC8(target) => {
|
||||||
|
// TODO the undocumented DD version of this instruction is actually 8 cycles
|
||||||
|
match target {
|
||||||
|
Target::DirectReg(_) => 4,
|
||||||
|
Target::IndirectReg(_) => 11,
|
||||||
|
Target::IndirectOffset(_, _) => 23,
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::DEC16(regpair) |
|
||||||
|
Instruction::INC16(regpair) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
6
|
||||||
|
} else {
|
||||||
|
10
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::DI |
|
||||||
|
Instruction::EI => 4,
|
||||||
|
|
||||||
|
Instruction::DJNZ(_) => {
|
||||||
|
return Ok(Z80InstructionCycles::Branch {
|
||||||
|
taken: 13,
|
||||||
|
not_taken: 8,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::EXX => 4,
|
||||||
|
Instruction::EXafaf => 4,
|
||||||
|
Instruction::EXhlde => 4,
|
||||||
|
Instruction::EXsp(regpair) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
19
|
||||||
|
} else {
|
||||||
|
23
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::HALT => 4,
|
||||||
|
Instruction::IM(_) => 8,
|
||||||
|
|
||||||
|
Instruction::INic(_) |
|
||||||
|
Instruction::INicz |
|
||||||
|
Instruction::OUTic(_) |
|
||||||
|
Instruction::OUTicz => 12,
|
||||||
|
|
||||||
|
Instruction::INx(_) |
|
||||||
|
Instruction::OUTx(_) => 11,
|
||||||
|
|
||||||
|
Instruction::JP(_) => 10,
|
||||||
|
Instruction::JR(_) => 12,
|
||||||
|
|
||||||
|
Instruction::JPIndirect(regpair) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
4
|
||||||
|
} else {
|
||||||
|
8
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::JPcc(_, _) => 10,
|
||||||
|
|
||||||
|
Instruction::JRcc(_, _) => {
|
||||||
|
return Ok(Z80InstructionCycles::Branch {
|
||||||
|
taken: 12,
|
||||||
|
not_taken: 7,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::LD(dest, src) => {
|
||||||
|
// TODO the undocumented DD version of this instruction is actually 8 cycles
|
||||||
|
match (dest, src) {
|
||||||
|
// 8-Bit Operations
|
||||||
|
|
||||||
|
(LoadTarget::DirectRegByte(_), LoadTarget::DirectRegByte(_)) => 4,
|
||||||
|
|
||||||
|
(LoadTarget::DirectRegByte(_), LoadTarget::ImmediateByte(_)) => 7,
|
||||||
|
(LoadTarget::IndirectRegByte(_), LoadTarget::ImmediateByte(_)) => 10,
|
||||||
|
|
||||||
|
(LoadTarget::IndirectOffsetByte(_, _), _) |
|
||||||
|
(_, LoadTarget::IndirectOffsetByte(_, _)) => 19,
|
||||||
|
|
||||||
|
(_, LoadTarget::IndirectRegByte(_)) |
|
||||||
|
(LoadTarget::IndirectRegByte(_), _) => 7,
|
||||||
|
|
||||||
|
(_, LoadTarget::IndirectByte(_)) |
|
||||||
|
(LoadTarget::IndirectByte(_), _) => 13,
|
||||||
|
|
||||||
|
// 16-Bit Operations
|
||||||
|
|
||||||
|
(LoadTarget::DirectRegWord(regpair), LoadTarget::ImmediateWord(_)) |
|
||||||
|
(LoadTarget::ImmediateWord(_), LoadTarget::DirectRegWord(regpair)) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
10
|
||||||
|
} else {
|
||||||
|
14
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
(LoadTarget::DirectRegWord(_), LoadTarget::DirectRegWord(regpair)) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
6
|
||||||
|
} else {
|
||||||
|
10
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
(LoadTarget::IndirectWord(_), LoadTarget::DirectRegWord(RegisterPair::HL)) |
|
||||||
|
(LoadTarget::DirectRegWord(RegisterPair::HL), LoadTarget::IndirectWord(_)) => 16,
|
||||||
|
|
||||||
|
(LoadTarget::IndirectWord(_), _) |
|
||||||
|
(_, LoadTarget::IndirectWord(_)) => 20,
|
||||||
|
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::LDsr(_, _) => 9,
|
||||||
|
|
||||||
|
Instruction::NEG => 8,
|
||||||
|
Instruction::NOP => 4,
|
||||||
|
|
||||||
|
|
||||||
|
Instruction::POP(regpair) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
10
|
||||||
|
} else {
|
||||||
|
14
|
||||||
|
}
|
||||||
|
},
|
||||||
|
Instruction::PUSH(regpair) => {
|
||||||
|
if !regpair.is_index_reg() {
|
||||||
|
11
|
||||||
|
} else {
|
||||||
|
15
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::RES(_, target, _) |
|
||||||
|
Instruction::SET(_, target, _) => {
|
||||||
|
match target {
|
||||||
|
Target::DirectReg(_) => 8,
|
||||||
|
Target::IndirectReg(_) => 15,
|
||||||
|
Target::IndirectOffset(_, _) => 23,
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::RET => 10,
|
||||||
|
Instruction::RETI => 14,
|
||||||
|
Instruction::RETN => 14,
|
||||||
|
|
||||||
|
Instruction::RETcc(_) => {
|
||||||
|
return Ok(Z80InstructionCycles::Branch {
|
||||||
|
taken: 11,
|
||||||
|
not_taken: 5,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::RL(target, _) |
|
||||||
|
Instruction::RLC(target, _) |
|
||||||
|
Instruction::RR(target, _) |
|
||||||
|
Instruction::RRC(target, _) |
|
||||||
|
Instruction::SLA(target, _) |
|
||||||
|
Instruction::SLL(target, _) |
|
||||||
|
Instruction::SRA(target, _) |
|
||||||
|
Instruction::SRL(target, _) => {
|
||||||
|
match target {
|
||||||
|
Target::DirectReg(_) => 8,
|
||||||
|
Target::IndirectReg(_) => 15,
|
||||||
|
Target::IndirectOffset(_, _) => 23,
|
||||||
|
_ => return Err(Error::new(format!("unexpected instruction: {:?}", instruction))),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Instruction::RLA |
|
||||||
|
Instruction::RLCA |
|
||||||
|
Instruction::RRA |
|
||||||
|
Instruction::RRCA => 4,
|
||||||
|
|
||||||
|
Instruction::RLD => 18,
|
||||||
|
Instruction::RRD => 18,
|
||||||
|
|
||||||
|
Instruction::RST(_) => 11,
|
||||||
|
|
||||||
|
Instruction::SCF => 4,
|
||||||
|
};
|
||||||
|
Ok(Z80InstructionCycles::Single(cycles))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
Last run on 2023-05-14 at commit aaa7952dd0cf0ab6e33946ce0ae1aa91920e5405
|
Last run on 2023-05-15 at commit f205e231b62d62c72186c1d9f5277e2bce693380
|
||||||
|
|
||||||
00.json completed, all passed!
|
00.json completed, all passed!
|
||||||
01.json completed, all passed!
|
01.json completed, all passed!
|
||||||
@ -568,7 +568,7 @@ ed 73.json completed, all passed!
|
|||||||
ed 74.json completed, all passed!
|
ed 74.json completed, all passed!
|
||||||
ed 75.json completed, all passed!
|
ed 75.json completed, all passed!
|
||||||
ed 76.json completed, all passed!
|
ed 76.json completed, all passed!
|
||||||
ed 77.json completed, all passed!
|
ed 77.json completed: 0 passed, 1000 FAILED
|
||||||
ed 78.json completed, all passed!
|
ed 78.json completed, all passed!
|
||||||
ed 79.json completed, all passed!
|
ed 79.json completed, all passed!
|
||||||
ed 7a.json completed, all passed!
|
ed 7a.json completed, all passed!
|
||||||
@ -576,7 +576,7 @@ ed 7b.json completed, all passed!
|
|||||||
ed 7c.json completed, all passed!
|
ed 7c.json completed, all passed!
|
||||||
ed 7d.json completed, all passed!
|
ed 7d.json completed, all passed!
|
||||||
ed 7e.json completed, all passed!
|
ed 7e.json completed, all passed!
|
||||||
ed 7f.json completed, all passed!
|
ed 7f.json completed: 0 passed, 1000 FAILED
|
||||||
ed a0.json completed, all passed!
|
ed a0.json completed, all passed!
|
||||||
ed a1.json completed: 0 passed, 1000 FAILED
|
ed a1.json completed: 0 passed, 1000 FAILED
|
||||||
ed a2.json completed: 13 passed, 987 FAILED
|
ed a2.json completed: 13 passed, 987 FAILED
|
||||||
@ -643,5 +643,5 @@ fd f9.json completed, all passed!
|
|||||||
fe.json completed, all passed!
|
fe.json completed, all passed!
|
||||||
ff.json completed, all passed!
|
ff.json completed, all passed!
|
||||||
|
|
||||||
passed: 629560, failed: 12440, total 98%
|
passed: 627560, failed: 14440, total 98%
|
||||||
completed in 0m 32s
|
completed in 0m 35s
|
||||||
|
@ -0,0 +1,647 @@
|
|||||||
|
Last run on 2023-05-13 at commit f3d1fd0ae2410a164c92150cc3caa0f525cbb4b7
|
||||||
|
|
||||||
|
00.json completed, all passed!
|
||||||
|
01.json completed, all passed!
|
||||||
|
02.json completed, all passed!
|
||||||
|
03.json completed, all passed!
|
||||||
|
04.json completed, all passed!
|
||||||
|
05.json completed, all passed!
|
||||||
|
06.json completed, all passed!
|
||||||
|
07.json completed, all passed!
|
||||||
|
08.json completed, all passed!
|
||||||
|
09.json completed, all passed!
|
||||||
|
0a.json completed, all passed!
|
||||||
|
0b.json completed, all passed!
|
||||||
|
0c.json completed, all passed!
|
||||||
|
0d.json completed, all passed!
|
||||||
|
0e.json completed, all passed!
|
||||||
|
0f.json completed, all passed!
|
||||||
|
10.json completed, all passed!
|
||||||
|
100.json completed, all passed!
|
||||||
|
101.json completed, all passed!
|
||||||
|
11.json completed, all passed!
|
||||||
|
12.json completed, all passed!
|
||||||
|
13.json completed, all passed!
|
||||||
|
14.json completed, all passed!
|
||||||
|
15.json completed, all passed!
|
||||||
|
16.json completed, all passed!
|
||||||
|
17.json completed, all passed!
|
||||||
|
18.json completed, all passed!
|
||||||
|
19.json completed, all passed!
|
||||||
|
1a.json completed, all passed!
|
||||||
|
1b.json completed, all passed!
|
||||||
|
1c.json completed, all passed!
|
||||||
|
1d.json completed, all passed!
|
||||||
|
1e.json completed, all passed!
|
||||||
|
1f.json completed, all passed!
|
||||||
|
20.json completed, all passed!
|
||||||
|
21.json completed, all passed!
|
||||||
|
22.json completed: 999 passed, 1 FAILED
|
||||||
|
23.json completed, all passed!
|
||||||
|
24.json completed, all passed!
|
||||||
|
25.json completed, all passed!
|
||||||
|
26.json completed, all passed!
|
||||||
|
27.json completed: 0 passed, 1000 FAILED
|
||||||
|
28.json completed, all passed!
|
||||||
|
29.json completed, all passed!
|
||||||
|
2a.json completed, all passed!
|
||||||
|
2b.json completed, all passed!
|
||||||
|
2c.json completed, all passed!
|
||||||
|
2d.json completed, all passed!
|
||||||
|
2e.json completed, all passed!
|
||||||
|
2f.json completed, all passed!
|
||||||
|
30.json completed, all passed!
|
||||||
|
31.json completed, all passed!
|
||||||
|
32.json completed, all passed!
|
||||||
|
33.json completed, all passed!
|
||||||
|
34.json completed, all passed!
|
||||||
|
35.json completed, all passed!
|
||||||
|
36.json completed, all passed!
|
||||||
|
37.json completed, all passed!
|
||||||
|
38.json completed, all passed!
|
||||||
|
39.json completed, all passed!
|
||||||
|
3a.json completed, all passed!
|
||||||
|
3b.json completed, all passed!
|
||||||
|
3c.json completed, all passed!
|
||||||
|
3d.json completed, all passed!
|
||||||
|
3e.json completed, all passed!
|
||||||
|
3f.json completed, all passed!
|
||||||
|
40.json completed, all passed!
|
||||||
|
41.json completed, all passed!
|
||||||
|
42.json completed, all passed!
|
||||||
|
43.json completed, all passed!
|
||||||
|
44.json completed, all passed!
|
||||||
|
45.json completed, all passed!
|
||||||
|
46.json completed, all passed!
|
||||||
|
47.json completed, all passed!
|
||||||
|
48.json completed, all passed!
|
||||||
|
49.json completed, all passed!
|
||||||
|
4a.json completed, all passed!
|
||||||
|
4b.json completed, all passed!
|
||||||
|
4c.json completed, all passed!
|
||||||
|
4d.json completed, all passed!
|
||||||
|
4e.json completed, all passed!
|
||||||
|
4f.json completed, all passed!
|
||||||
|
50.json completed, all passed!
|
||||||
|
51.json completed, all passed!
|
||||||
|
52.json completed, all passed!
|
||||||
|
53.json completed, all passed!
|
||||||
|
54.json completed, all passed!
|
||||||
|
55.json completed, all passed!
|
||||||
|
56.json completed, all passed!
|
||||||
|
57.json completed, all passed!
|
||||||
|
58.json completed, all passed!
|
||||||
|
59.json completed, all passed!
|
||||||
|
5a.json completed, all passed!
|
||||||
|
5b.json completed, all passed!
|
||||||
|
5c.json completed, all passed!
|
||||||
|
5d.json completed, all passed!
|
||||||
|
5e.json completed, all passed!
|
||||||
|
5f.json completed, all passed!
|
||||||
|
60.json completed, all passed!
|
||||||
|
61.json completed, all passed!
|
||||||
|
62.json completed, all passed!
|
||||||
|
63.json completed, all passed!
|
||||||
|
64.json completed, all passed!
|
||||||
|
65.json completed, all passed!
|
||||||
|
66.json completed, all passed!
|
||||||
|
67.json completed, all passed!
|
||||||
|
68.json completed, all passed!
|
||||||
|
69.json completed, all passed!
|
||||||
|
6a.json completed, all passed!
|
||||||
|
6b.json completed, all passed!
|
||||||
|
6c.json completed, all passed!
|
||||||
|
6d.json completed, all passed!
|
||||||
|
6e.json completed, all passed!
|
||||||
|
6f.json completed, all passed!
|
||||||
|
70.json completed, all passed!
|
||||||
|
71.json completed, all passed!
|
||||||
|
72.json completed, all passed!
|
||||||
|
73.json completed, all passed!
|
||||||
|
74.json completed, all passed!
|
||||||
|
75.json completed, all passed!
|
||||||
|
76.json completed, all passed!
|
||||||
|
77.json completed, all passed!
|
||||||
|
78.json completed, all passed!
|
||||||
|
79.json completed, all passed!
|
||||||
|
7a.json completed, all passed!
|
||||||
|
7b.json completed, all passed!
|
||||||
|
7c.json completed, all passed!
|
||||||
|
7d.json completed, all passed!
|
||||||
|
7e.json completed, all passed!
|
||||||
|
7f.json completed, all passed!
|
||||||
|
80.json completed, all passed!
|
||||||
|
81.json completed, all passed!
|
||||||
|
82.json completed, all passed!
|
||||||
|
83.json completed, all passed!
|
||||||
|
84.json completed, all passed!
|
||||||
|
85.json completed, all passed!
|
||||||
|
86.json completed, all passed!
|
||||||
|
87.json completed, all passed!
|
||||||
|
88.json completed, all passed!
|
||||||
|
89.json completed, all passed!
|
||||||
|
8a.json completed, all passed!
|
||||||
|
8b.json completed, all passed!
|
||||||
|
8c.json completed, all passed!
|
||||||
|
8d.json completed, all passed!
|
||||||
|
8e.json completed, all passed!
|
||||||
|
8f.json completed, all passed!
|
||||||
|
90.json completed, all passed!
|
||||||
|
91.json completed, all passed!
|
||||||
|
92.json completed, all passed!
|
||||||
|
93.json completed, all passed!
|
||||||
|
94.json completed, all passed!
|
||||||
|
95.json completed, all passed!
|
||||||
|
96.json completed, all passed!
|
||||||
|
97.json completed, all passed!
|
||||||
|
98.json completed, all passed!
|
||||||
|
99.json completed, all passed!
|
||||||
|
9a.json completed, all passed!
|
||||||
|
9b.json completed, all passed!
|
||||||
|
9c.json completed, all passed!
|
||||||
|
9d.json completed, all passed!
|
||||||
|
9e.json completed, all passed!
|
||||||
|
9f.json completed, all passed!
|
||||||
|
a0.json completed, all passed!
|
||||||
|
a1.json completed, all passed!
|
||||||
|
a2.json completed, all passed!
|
||||||
|
a3.json completed, all passed!
|
||||||
|
a4.json completed, all passed!
|
||||||
|
a5.json completed, all passed!
|
||||||
|
a6.json completed, all passed!
|
||||||
|
a7.json completed, all passed!
|
||||||
|
a8.json completed, all passed!
|
||||||
|
a9.json completed, all passed!
|
||||||
|
aa.json completed, all passed!
|
||||||
|
ab.json completed, all passed!
|
||||||
|
ac.json completed, all passed!
|
||||||
|
ad.json completed, all passed!
|
||||||
|
ae.json completed, all passed!
|
||||||
|
af.json completed, all passed!
|
||||||
|
b0.json completed, all passed!
|
||||||
|
b1.json completed, all passed!
|
||||||
|
b2.json completed, all passed!
|
||||||
|
b3.json completed, all passed!
|
||||||
|
b4.json completed, all passed!
|
||||||
|
b5.json completed, all passed!
|
||||||
|
b6.json completed, all passed!
|
||||||
|
b7.json completed, all passed!
|
||||||
|
b8.json completed, all passed!
|
||||||
|
b9.json completed, all passed!
|
||||||
|
ba.json completed, all passed!
|
||||||
|
bb.json completed, all passed!
|
||||||
|
bc.json completed, all passed!
|
||||||
|
bd.json completed, all passed!
|
||||||
|
be.json completed, all passed!
|
||||||
|
bf.json completed, all passed!
|
||||||
|
c0.json completed, all passed!
|
||||||
|
c1.json completed, all passed!
|
||||||
|
c2.json completed, all passed!
|
||||||
|
c3.json completed, all passed!
|
||||||
|
c4.json completed, all passed!
|
||||||
|
c5.json completed, all passed!
|
||||||
|
c6.json completed, all passed!
|
||||||
|
c7.json completed, all passed!
|
||||||
|
c8.json completed, all passed!
|
||||||
|
c9.json completed, all passed!
|
||||||
|
ca.json completed, all passed!
|
||||||
|
cb 00.json completed, all passed!
|
||||||
|
cb 01.json completed, all passed!
|
||||||
|
cb 02.json completed, all passed!
|
||||||
|
cb 03.json completed, all passed!
|
||||||
|
cb 04.json completed, all passed!
|
||||||
|
cb 05.json completed, all passed!
|
||||||
|
cb 06.json completed, all passed!
|
||||||
|
cb 07.json completed, all passed!
|
||||||
|
cb 08.json completed, all passed!
|
||||||
|
cb 09.json completed, all passed!
|
||||||
|
cb 0a.json completed, all passed!
|
||||||
|
cb 0b.json completed, all passed!
|
||||||
|
cb 0c.json completed, all passed!
|
||||||
|
cb 0d.json completed, all passed!
|
||||||
|
cb 0e.json completed, all passed!
|
||||||
|
cb 0f.json completed, all passed!
|
||||||
|
cb 10.json completed, all passed!
|
||||||
|
cb 11.json completed, all passed!
|
||||||
|
cb 12.json completed, all passed!
|
||||||
|
cb 13.json completed, all passed!
|
||||||
|
cb 14.json completed, all passed!
|
||||||
|
cb 15.json completed, all passed!
|
||||||
|
cb 16.json completed, all passed!
|
||||||
|
cb 17.json completed, all passed!
|
||||||
|
cb 18.json completed, all passed!
|
||||||
|
cb 19.json completed, all passed!
|
||||||
|
cb 1a.json completed, all passed!
|
||||||
|
cb 1b.json completed, all passed!
|
||||||
|
cb 1c.json completed, all passed!
|
||||||
|
cb 1d.json completed, all passed!
|
||||||
|
cb 1e.json completed, all passed!
|
||||||
|
cb 1f.json completed, all passed!
|
||||||
|
cb 20.json completed, all passed!
|
||||||
|
cb 21.json completed, all passed!
|
||||||
|
cb 22.json completed, all passed!
|
||||||
|
cb 23.json completed, all passed!
|
||||||
|
cb 24.json completed, all passed!
|
||||||
|
cb 25.json completed, all passed!
|
||||||
|
cb 26.json completed, all passed!
|
||||||
|
cb 27.json completed, all passed!
|
||||||
|
cb 28.json completed, all passed!
|
||||||
|
cb 29.json completed, all passed!
|
||||||
|
cb 2a.json completed, all passed!
|
||||||
|
cb 2b.json completed, all passed!
|
||||||
|
cb 2c.json completed, all passed!
|
||||||
|
cb 2d.json completed, all passed!
|
||||||
|
cb 2e.json completed, all passed!
|
||||||
|
cb 2f.json completed, all passed!
|
||||||
|
cb 38.json completed, all passed!
|
||||||
|
cb 39.json completed, all passed!
|
||||||
|
cb 3a.json completed, all passed!
|
||||||
|
cb 3b.json completed, all passed!
|
||||||
|
cb 3c.json completed, all passed!
|
||||||
|
cb 3d.json completed, all passed!
|
||||||
|
cb 3e.json completed, all passed!
|
||||||
|
cb 3f.json completed, all passed!
|
||||||
|
cb 40.json completed, all passed!
|
||||||
|
cb 41.json completed, all passed!
|
||||||
|
cb 42.json completed, all passed!
|
||||||
|
cb 43.json completed, all passed!
|
||||||
|
cb 44.json completed, all passed!
|
||||||
|
cb 45.json completed, all passed!
|
||||||
|
cb 46.json completed, all passed!
|
||||||
|
cb 47.json completed, all passed!
|
||||||
|
cb 48.json completed, all passed!
|
||||||
|
cb 49.json completed, all passed!
|
||||||
|
cb 4a.json completed, all passed!
|
||||||
|
cb 4b.json completed, all passed!
|
||||||
|
cb 4c.json completed, all passed!
|
||||||
|
cb 4d.json completed, all passed!
|
||||||
|
cb 4e.json completed, all passed!
|
||||||
|
cb 4f.json completed, all passed!
|
||||||
|
cb 50.json completed, all passed!
|
||||||
|
cb 51.json completed, all passed!
|
||||||
|
cb 52.json completed, all passed!
|
||||||
|
cb 53.json completed, all passed!
|
||||||
|
cb 54.json completed, all passed!
|
||||||
|
cb 55.json completed, all passed!
|
||||||
|
cb 56.json completed, all passed!
|
||||||
|
cb 57.json completed, all passed!
|
||||||
|
cb 58.json completed, all passed!
|
||||||
|
cb 59.json completed, all passed!
|
||||||
|
cb 5a.json completed, all passed!
|
||||||
|
cb 5b.json completed, all passed!
|
||||||
|
cb 5c.json completed, all passed!
|
||||||
|
cb 5d.json completed, all passed!
|
||||||
|
cb 5e.json completed, all passed!
|
||||||
|
cb 5f.json completed, all passed!
|
||||||
|
cb 60.json completed, all passed!
|
||||||
|
cb 61.json completed, all passed!
|
||||||
|
cb 62.json completed, all passed!
|
||||||
|
cb 63.json completed, all passed!
|
||||||
|
cb 64.json completed, all passed!
|
||||||
|
cb 65.json completed, all passed!
|
||||||
|
cb 66.json completed, all passed!
|
||||||
|
cb 67.json completed, all passed!
|
||||||
|
cb 68.json completed, all passed!
|
||||||
|
cb 69.json completed, all passed!
|
||||||
|
cb 6a.json completed, all passed!
|
||||||
|
cb 6b.json completed, all passed!
|
||||||
|
cb 6c.json completed, all passed!
|
||||||
|
cb 6d.json completed, all passed!
|
||||||
|
cb 6e.json completed, all passed!
|
||||||
|
cb 6f.json completed, all passed!
|
||||||
|
cb 70.json completed, all passed!
|
||||||
|
cb 71.json completed, all passed!
|
||||||
|
cb 72.json completed, all passed!
|
||||||
|
cb 73.json completed, all passed!
|
||||||
|
cb 74.json completed, all passed!
|
||||||
|
cb 75.json completed, all passed!
|
||||||
|
cb 76.json completed, all passed!
|
||||||
|
cb 77.json completed, all passed!
|
||||||
|
cb 78.json completed, all passed!
|
||||||
|
cb 79.json completed, all passed!
|
||||||
|
cb 7a.json completed, all passed!
|
||||||
|
cb 7b.json completed, all passed!
|
||||||
|
cb 7c.json completed, all passed!
|
||||||
|
cb 7d.json completed, all passed!
|
||||||
|
cb 7e.json completed, all passed!
|
||||||
|
cb 7f.json completed, all passed!
|
||||||
|
cb 80.json completed, all passed!
|
||||||
|
cb 81.json completed, all passed!
|
||||||
|
cb 82.json completed, all passed!
|
||||||
|
cb 83.json completed, all passed!
|
||||||
|
cb 84.json completed, all passed!
|
||||||
|
cb 85.json completed, all passed!
|
||||||
|
cb 86.json completed, all passed!
|
||||||
|
cb 87.json completed, all passed!
|
||||||
|
cb 88.json completed, all passed!
|
||||||
|
cb 89.json completed, all passed!
|
||||||
|
cb 8a.json completed, all passed!
|
||||||
|
cb 8b.json completed, all passed!
|
||||||
|
cb 8c.json completed, all passed!
|
||||||
|
cb 8d.json completed, all passed!
|
||||||
|
cb 8e.json completed, all passed!
|
||||||
|
cb 8f.json completed, all passed!
|
||||||
|
cb 90.json completed, all passed!
|
||||||
|
cb 91.json completed, all passed!
|
||||||
|
cb 92.json completed, all passed!
|
||||||
|
cb 93.json completed, all passed!
|
||||||
|
cb 94.json completed, all passed!
|
||||||
|
cb 95.json completed, all passed!
|
||||||
|
cb 96.json completed, all passed!
|
||||||
|
cb 97.json completed, all passed!
|
||||||
|
cb 98.json completed, all passed!
|
||||||
|
cb 99.json completed, all passed!
|
||||||
|
cb 9a.json completed, all passed!
|
||||||
|
cb 9b.json completed, all passed!
|
||||||
|
cb 9c.json completed, all passed!
|
||||||
|
cb 9d.json completed, all passed!
|
||||||
|
cb 9e.json completed, all passed!
|
||||||
|
cb 9f.json completed, all passed!
|
||||||
|
cb a0.json completed, all passed!
|
||||||
|
cb a1.json completed, all passed!
|
||||||
|
cb a2.json completed, all passed!
|
||||||
|
cb a3.json completed, all passed!
|
||||||
|
cb a4.json completed, all passed!
|
||||||
|
cb a5.json completed, all passed!
|
||||||
|
cb a6.json completed, all passed!
|
||||||
|
cb a7.json completed, all passed!
|
||||||
|
cb a8.json completed, all passed!
|
||||||
|
cb a9.json completed, all passed!
|
||||||
|
cb aa.json completed, all passed!
|
||||||
|
cb ab.json completed, all passed!
|
||||||
|
cb ac.json completed, all passed!
|
||||||
|
cb ad.json completed, all passed!
|
||||||
|
cb ae.json completed, all passed!
|
||||||
|
cb af.json completed, all passed!
|
||||||
|
cb b0.json completed, all passed!
|
||||||
|
cb b1.json completed, all passed!
|
||||||
|
cb b2.json completed, all passed!
|
||||||
|
cb b3.json completed, all passed!
|
||||||
|
cb b4.json completed, all passed!
|
||||||
|
cb b5.json completed, all passed!
|
||||||
|
cb b6.json completed, all passed!
|
||||||
|
cb b7.json completed, all passed!
|
||||||
|
cb b8.json completed, all passed!
|
||||||
|
cb b9.json completed, all passed!
|
||||||
|
cb ba.json completed, all passed!
|
||||||
|
cb bb.json completed, all passed!
|
||||||
|
cb bc.json completed, all passed!
|
||||||
|
cb bd.json completed, all passed!
|
||||||
|
cb be.json completed, all passed!
|
||||||
|
cb bf.json completed, all passed!
|
||||||
|
cb c0.json completed, all passed!
|
||||||
|
cb c1.json completed, all passed!
|
||||||
|
cb c2.json completed, all passed!
|
||||||
|
cb c3.json completed, all passed!
|
||||||
|
cb c4.json completed, all passed!
|
||||||
|
cb c5.json completed, all passed!
|
||||||
|
cb c6.json completed, all passed!
|
||||||
|
cb c7.json completed, all passed!
|
||||||
|
cb c8.json completed, all passed!
|
||||||
|
cb c9.json completed, all passed!
|
||||||
|
cb ca.json completed, all passed!
|
||||||
|
cb cb.json completed, all passed!
|
||||||
|
cb cc.json completed, all passed!
|
||||||
|
cb cd.json completed, all passed!
|
||||||
|
cb ce.json completed, all passed!
|
||||||
|
cb cf.json completed, all passed!
|
||||||
|
cb d0.json completed, all passed!
|
||||||
|
cb d1.json completed, all passed!
|
||||||
|
cb d2.json completed, all passed!
|
||||||
|
cb d3.json completed, all passed!
|
||||||
|
cb d4.json completed, all passed!
|
||||||
|
cb d5.json completed, all passed!
|
||||||
|
cb d6.json completed, all passed!
|
||||||
|
cb d7.json completed, all passed!
|
||||||
|
cb d8.json completed, all passed!
|
||||||
|
cb d9.json completed, all passed!
|
||||||
|
cb da.json completed, all passed!
|
||||||
|
cb db.json completed, all passed!
|
||||||
|
cb dc.json completed, all passed!
|
||||||
|
cb dd.json completed, all passed!
|
||||||
|
cb de.json completed, all passed!
|
||||||
|
cb df.json completed, all passed!
|
||||||
|
cb e0.json completed, all passed!
|
||||||
|
cb e1.json completed, all passed!
|
||||||
|
cb e2.json completed, all passed!
|
||||||
|
cb e3.json completed, all passed!
|
||||||
|
cb e4.json completed, all passed!
|
||||||
|
cb e5.json completed, all passed!
|
||||||
|
cb e6.json completed, all passed!
|
||||||
|
cb e7.json completed, all passed!
|
||||||
|
cb e8.json completed, all passed!
|
||||||
|
cb e9.json completed, all passed!
|
||||||
|
cb ea.json completed, all passed!
|
||||||
|
cb eb.json completed, all passed!
|
||||||
|
cb ec.json completed, all passed!
|
||||||
|
cb ed.json completed, all passed!
|
||||||
|
cb ee.json completed, all passed!
|
||||||
|
cb ef.json completed, all passed!
|
||||||
|
cb f0.json completed, all passed!
|
||||||
|
cb f1.json completed, all passed!
|
||||||
|
cb f2.json completed, all passed!
|
||||||
|
cb f3.json completed, all passed!
|
||||||
|
cb f4.json completed, all passed!
|
||||||
|
cb f5.json completed, all passed!
|
||||||
|
cb f6.json completed, all passed!
|
||||||
|
cb f7.json completed, all passed!
|
||||||
|
cb f8.json completed, all passed!
|
||||||
|
cb f9.json completed, all passed!
|
||||||
|
cb fa.json completed, all passed!
|
||||||
|
cb fb.json completed, all passed!
|
||||||
|
cb fc.json completed, all passed!
|
||||||
|
cb fd.json completed, all passed!
|
||||||
|
cb fe.json completed, all passed!
|
||||||
|
cb ff.json completed, all passed!
|
||||||
|
cc.json completed, all passed!
|
||||||
|
cd.json completed, all passed!
|
||||||
|
ce.json completed, all passed!
|
||||||
|
cf.json completed, all passed!
|
||||||
|
d0.json completed, all passed!
|
||||||
|
d1.json completed, all passed!
|
||||||
|
d2.json completed, all passed!
|
||||||
|
d3.json completed, all passed!
|
||||||
|
d4.json completed, all passed!
|
||||||
|
d5.json completed, all passed!
|
||||||
|
d6.json completed, all passed!
|
||||||
|
d7.json completed, all passed!
|
||||||
|
d8.json completed, all passed!
|
||||||
|
d9.json completed, all passed!
|
||||||
|
da.json completed, all passed!
|
||||||
|
db.json completed, all passed!
|
||||||
|
dc.json completed, all passed!
|
||||||
|
dd 09.json completed, all passed!
|
||||||
|
dd 19.json completed, all passed!
|
||||||
|
dd 29.json completed, all passed!
|
||||||
|
dd 36.json completed, all passed!
|
||||||
|
dd 39.json completed, all passed!
|
||||||
|
dd 46.json completed, all passed!
|
||||||
|
dd 4e.json completed, all passed!
|
||||||
|
dd 56.json completed, all passed!
|
||||||
|
dd 5e.json completed, all passed!
|
||||||
|
dd 66.json completed, all passed!
|
||||||
|
dd 6e.json completed, all passed!
|
||||||
|
dd 70.json completed, all passed!
|
||||||
|
dd 71.json completed, all passed!
|
||||||
|
dd 72.json completed, all passed!
|
||||||
|
dd 73.json completed, all passed!
|
||||||
|
dd 74.json completed, all passed!
|
||||||
|
dd 75.json completed, all passed!
|
||||||
|
dd 77.json completed, all passed!
|
||||||
|
dd 7e.json completed, all passed!
|
||||||
|
dd 86.json completed, all passed!
|
||||||
|
dd 8e.json completed, all passed!
|
||||||
|
dd 96.json completed, all passed!
|
||||||
|
dd 9e.json completed, all passed!
|
||||||
|
dd a6.json completed, all passed!
|
||||||
|
dd ae.json completed, all passed!
|
||||||
|
dd b6.json completed, all passed!
|
||||||
|
dd be.json completed, all passed!
|
||||||
|
dd e1.json completed, all passed!
|
||||||
|
dd e3.json completed, all passed!
|
||||||
|
dd e5.json completed, all passed!
|
||||||
|
dd e9.json completed, all passed!
|
||||||
|
dd f9.json completed, all passed!
|
||||||
|
de.json completed, all passed!
|
||||||
|
df.json completed, all passed!
|
||||||
|
e0.json completed, all passed!
|
||||||
|
e1.json completed, all passed!
|
||||||
|
e2.json completed, all passed!
|
||||||
|
e3.json completed, all passed!
|
||||||
|
e4.json completed, all passed!
|
||||||
|
e5.json completed, all passed!
|
||||||
|
e6.json completed, all passed!
|
||||||
|
e7.json completed, all passed!
|
||||||
|
e8.json completed, all passed!
|
||||||
|
e9.json completed, all passed!
|
||||||
|
ea.json completed, all passed!
|
||||||
|
eb.json completed, all passed!
|
||||||
|
ec.json completed, all passed!
|
||||||
|
ed 40.json completed, all passed!
|
||||||
|
ed 41.json completed, all passed!
|
||||||
|
ed 42.json completed, all passed!
|
||||||
|
ed 43.json completed, all passed!
|
||||||
|
ed 44.json completed, all passed!
|
||||||
|
ed 45.json completed, all passed!
|
||||||
|
ed 46.json completed, all passed!
|
||||||
|
ed 47.json completed, all passed!
|
||||||
|
ed 48.json completed, all passed!
|
||||||
|
ed 49.json completed, all passed!
|
||||||
|
ed 4a.json completed, all passed!
|
||||||
|
ed 4b.json completed, all passed!
|
||||||
|
ed 4c.json completed, all passed!
|
||||||
|
ed 4d.json completed, all passed!
|
||||||
|
ed 4e.json completed, all passed!
|
||||||
|
ed 4f.json completed, all passed!
|
||||||
|
ed 50.json completed, all passed!
|
||||||
|
ed 51.json completed, all passed!
|
||||||
|
ed 52.json completed, all passed!
|
||||||
|
ed 53.json completed, all passed!
|
||||||
|
ed 54.json completed, all passed!
|
||||||
|
ed 55.json completed, all passed!
|
||||||
|
ed 56.json completed, all passed!
|
||||||
|
ed 57.json completed, all passed!
|
||||||
|
ed 58.json completed, all passed!
|
||||||
|
ed 59.json completed, all passed!
|
||||||
|
ed 5a.json completed, all passed!
|
||||||
|
ed 5b.json completed, all passed!
|
||||||
|
ed 5c.json completed, all passed!
|
||||||
|
ed 5d.json completed, all passed!
|
||||||
|
ed 5e.json completed, all passed!
|
||||||
|
ed 5f.json completed, all passed!
|
||||||
|
ed 60.json completed, all passed!
|
||||||
|
ed 61.json completed, all passed!
|
||||||
|
ed 62.json completed, all passed!
|
||||||
|
ed 64.json completed, all passed!
|
||||||
|
ed 65.json completed, all passed!
|
||||||
|
ed 66.json completed, all passed!
|
||||||
|
ed 67.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed 68.json completed, all passed!
|
||||||
|
ed 69.json completed, all passed!
|
||||||
|
ed 6a.json completed, all passed!
|
||||||
|
ed 6c.json completed, all passed!
|
||||||
|
ed 6d.json completed, all passed!
|
||||||
|
ed 6e.json completed, all passed!
|
||||||
|
ed 6f.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed 72.json completed, all passed!
|
||||||
|
ed 73.json completed, all passed!
|
||||||
|
ed 74.json completed, all passed!
|
||||||
|
ed 75.json completed, all passed!
|
||||||
|
ed 76.json completed, all passed!
|
||||||
|
ed 77.json completed, all passed!
|
||||||
|
ed 78.json completed, all passed!
|
||||||
|
ed 79.json completed, all passed!
|
||||||
|
ed 7a.json completed, all passed!
|
||||||
|
ed 7b.json completed, all passed!
|
||||||
|
ed 7c.json completed, all passed!
|
||||||
|
ed 7d.json completed, all passed!
|
||||||
|
ed 7e.json completed, all passed!
|
||||||
|
ed 7f.json completed, all passed!
|
||||||
|
ed a0.json completed, all passed!
|
||||||
|
ed a1.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed a2.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed a3.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed a8.json completed, all passed!
|
||||||
|
ed a9.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed aa.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed ab.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b0.json completed, all passed!
|
||||||
|
ed b1.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b2.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b3.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b8.json completed, all passed!
|
||||||
|
ed b9.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed ba.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed bb.json completed: 0 passed, 1000 FAILED
|
||||||
|
ee.json completed, all passed!
|
||||||
|
ef.json completed, all passed!
|
||||||
|
f0.json completed, all passed!
|
||||||
|
f1.json completed, all passed!
|
||||||
|
f2.json completed, all passed!
|
||||||
|
f3.json completed, all passed!
|
||||||
|
f4.json completed, all passed!
|
||||||
|
f5.json completed, all passed!
|
||||||
|
f6.json completed, all passed!
|
||||||
|
f7.json completed, all passed!
|
||||||
|
f8.json completed, all passed!
|
||||||
|
f9.json completed, all passed!
|
||||||
|
fa.json completed, all passed!
|
||||||
|
fb.json completed, all passed!
|
||||||
|
fc.json completed, all passed!
|
||||||
|
fd 09.json completed, all passed!
|
||||||
|
fd 19.json completed, all passed!
|
||||||
|
fd 29.json completed, all passed!
|
||||||
|
fd 36.json completed, all passed!
|
||||||
|
fd 39.json completed, all passed!
|
||||||
|
fd 46.json completed, all passed!
|
||||||
|
fd 4e.json completed, all passed!
|
||||||
|
fd 56.json completed, all passed!
|
||||||
|
fd 5e.json completed, all passed!
|
||||||
|
fd 66.json completed, all passed!
|
||||||
|
fd 6e.json completed, all passed!
|
||||||
|
fd 70.json completed, all passed!
|
||||||
|
fd 71.json completed, all passed!
|
||||||
|
fd 72.json completed, all passed!
|
||||||
|
fd 73.json completed, all passed!
|
||||||
|
fd 74.json completed, all passed!
|
||||||
|
fd 75.json completed, all passed!
|
||||||
|
fd 77.json completed, all passed!
|
||||||
|
fd 7e.json completed, all passed!
|
||||||
|
fd 86.json completed, all passed!
|
||||||
|
fd 8e.json completed, all passed!
|
||||||
|
fd 96.json completed, all passed!
|
||||||
|
fd 9e.json completed, all passed!
|
||||||
|
fd a6.json completed, all passed!
|
||||||
|
fd ae.json completed, all passed!
|
||||||
|
fd b6.json completed, all passed!
|
||||||
|
fd be.json completed, all passed!
|
||||||
|
fd e1.json completed, all passed!
|
||||||
|
fd e3.json completed: 999 passed, 1 FAILED
|
||||||
|
fd e5.json completed, all passed!
|
||||||
|
fd e9.json completed, all passed!
|
||||||
|
fd f9.json completed, all passed!
|
||||||
|
fe.json completed, all passed!
|
||||||
|
ff.json completed, all passed!
|
||||||
|
|
||||||
|
passed: 626998, failed: 15002, total 98%
|
||||||
|
completed in 0m 32s
|
@ -0,0 +1,647 @@
|
|||||||
|
Last run on 2023-05-14 at commit aaa7952dd0cf0ab6e33946ce0ae1aa91920e5405
|
||||||
|
|
||||||
|
00.json completed, all passed!
|
||||||
|
01.json completed, all passed!
|
||||||
|
02.json completed, all passed!
|
||||||
|
03.json completed, all passed!
|
||||||
|
04.json completed, all passed!
|
||||||
|
05.json completed, all passed!
|
||||||
|
06.json completed, all passed!
|
||||||
|
07.json completed, all passed!
|
||||||
|
08.json completed, all passed!
|
||||||
|
09.json completed, all passed!
|
||||||
|
0a.json completed, all passed!
|
||||||
|
0b.json completed, all passed!
|
||||||
|
0c.json completed, all passed!
|
||||||
|
0d.json completed, all passed!
|
||||||
|
0e.json completed, all passed!
|
||||||
|
0f.json completed, all passed!
|
||||||
|
10.json completed, all passed!
|
||||||
|
100.json completed, all passed!
|
||||||
|
101.json completed, all passed!
|
||||||
|
11.json completed, all passed!
|
||||||
|
12.json completed, all passed!
|
||||||
|
13.json completed, all passed!
|
||||||
|
14.json completed, all passed!
|
||||||
|
15.json completed, all passed!
|
||||||
|
16.json completed, all passed!
|
||||||
|
17.json completed, all passed!
|
||||||
|
18.json completed, all passed!
|
||||||
|
19.json completed, all passed!
|
||||||
|
1a.json completed, all passed!
|
||||||
|
1b.json completed, all passed!
|
||||||
|
1c.json completed, all passed!
|
||||||
|
1d.json completed, all passed!
|
||||||
|
1e.json completed, all passed!
|
||||||
|
1f.json completed, all passed!
|
||||||
|
20.json completed, all passed!
|
||||||
|
21.json completed, all passed!
|
||||||
|
22.json completed, all passed!
|
||||||
|
23.json completed, all passed!
|
||||||
|
24.json completed, all passed!
|
||||||
|
25.json completed, all passed!
|
||||||
|
26.json completed, all passed!
|
||||||
|
27.json completed: 547 passed, 453 FAILED
|
||||||
|
28.json completed, all passed!
|
||||||
|
29.json completed, all passed!
|
||||||
|
2a.json completed, all passed!
|
||||||
|
2b.json completed, all passed!
|
||||||
|
2c.json completed, all passed!
|
||||||
|
2d.json completed, all passed!
|
||||||
|
2e.json completed, all passed!
|
||||||
|
2f.json completed, all passed!
|
||||||
|
30.json completed, all passed!
|
||||||
|
31.json completed, all passed!
|
||||||
|
32.json completed, all passed!
|
||||||
|
33.json completed, all passed!
|
||||||
|
34.json completed, all passed!
|
||||||
|
35.json completed, all passed!
|
||||||
|
36.json completed, all passed!
|
||||||
|
37.json completed, all passed!
|
||||||
|
38.json completed, all passed!
|
||||||
|
39.json completed, all passed!
|
||||||
|
3a.json completed, all passed!
|
||||||
|
3b.json completed, all passed!
|
||||||
|
3c.json completed, all passed!
|
||||||
|
3d.json completed, all passed!
|
||||||
|
3e.json completed, all passed!
|
||||||
|
3f.json completed, all passed!
|
||||||
|
40.json completed, all passed!
|
||||||
|
41.json completed, all passed!
|
||||||
|
42.json completed, all passed!
|
||||||
|
43.json completed, all passed!
|
||||||
|
44.json completed, all passed!
|
||||||
|
45.json completed, all passed!
|
||||||
|
46.json completed, all passed!
|
||||||
|
47.json completed, all passed!
|
||||||
|
48.json completed, all passed!
|
||||||
|
49.json completed, all passed!
|
||||||
|
4a.json completed, all passed!
|
||||||
|
4b.json completed, all passed!
|
||||||
|
4c.json completed, all passed!
|
||||||
|
4d.json completed, all passed!
|
||||||
|
4e.json completed, all passed!
|
||||||
|
4f.json completed, all passed!
|
||||||
|
50.json completed, all passed!
|
||||||
|
51.json completed, all passed!
|
||||||
|
52.json completed, all passed!
|
||||||
|
53.json completed, all passed!
|
||||||
|
54.json completed, all passed!
|
||||||
|
55.json completed, all passed!
|
||||||
|
56.json completed, all passed!
|
||||||
|
57.json completed, all passed!
|
||||||
|
58.json completed, all passed!
|
||||||
|
59.json completed, all passed!
|
||||||
|
5a.json completed, all passed!
|
||||||
|
5b.json completed, all passed!
|
||||||
|
5c.json completed, all passed!
|
||||||
|
5d.json completed, all passed!
|
||||||
|
5e.json completed, all passed!
|
||||||
|
5f.json completed, all passed!
|
||||||
|
60.json completed, all passed!
|
||||||
|
61.json completed, all passed!
|
||||||
|
62.json completed, all passed!
|
||||||
|
63.json completed, all passed!
|
||||||
|
64.json completed, all passed!
|
||||||
|
65.json completed, all passed!
|
||||||
|
66.json completed, all passed!
|
||||||
|
67.json completed, all passed!
|
||||||
|
68.json completed, all passed!
|
||||||
|
69.json completed, all passed!
|
||||||
|
6a.json completed, all passed!
|
||||||
|
6b.json completed, all passed!
|
||||||
|
6c.json completed, all passed!
|
||||||
|
6d.json completed, all passed!
|
||||||
|
6e.json completed, all passed!
|
||||||
|
6f.json completed, all passed!
|
||||||
|
70.json completed, all passed!
|
||||||
|
71.json completed, all passed!
|
||||||
|
72.json completed, all passed!
|
||||||
|
73.json completed, all passed!
|
||||||
|
74.json completed, all passed!
|
||||||
|
75.json completed, all passed!
|
||||||
|
76.json completed, all passed!
|
||||||
|
77.json completed, all passed!
|
||||||
|
78.json completed, all passed!
|
||||||
|
79.json completed, all passed!
|
||||||
|
7a.json completed, all passed!
|
||||||
|
7b.json completed, all passed!
|
||||||
|
7c.json completed, all passed!
|
||||||
|
7d.json completed, all passed!
|
||||||
|
7e.json completed, all passed!
|
||||||
|
7f.json completed, all passed!
|
||||||
|
80.json completed, all passed!
|
||||||
|
81.json completed, all passed!
|
||||||
|
82.json completed, all passed!
|
||||||
|
83.json completed, all passed!
|
||||||
|
84.json completed, all passed!
|
||||||
|
85.json completed, all passed!
|
||||||
|
86.json completed, all passed!
|
||||||
|
87.json completed, all passed!
|
||||||
|
88.json completed, all passed!
|
||||||
|
89.json completed, all passed!
|
||||||
|
8a.json completed, all passed!
|
||||||
|
8b.json completed, all passed!
|
||||||
|
8c.json completed, all passed!
|
||||||
|
8d.json completed, all passed!
|
||||||
|
8e.json completed, all passed!
|
||||||
|
8f.json completed, all passed!
|
||||||
|
90.json completed, all passed!
|
||||||
|
91.json completed, all passed!
|
||||||
|
92.json completed, all passed!
|
||||||
|
93.json completed, all passed!
|
||||||
|
94.json completed, all passed!
|
||||||
|
95.json completed, all passed!
|
||||||
|
96.json completed, all passed!
|
||||||
|
97.json completed, all passed!
|
||||||
|
98.json completed, all passed!
|
||||||
|
99.json completed, all passed!
|
||||||
|
9a.json completed, all passed!
|
||||||
|
9b.json completed, all passed!
|
||||||
|
9c.json completed, all passed!
|
||||||
|
9d.json completed, all passed!
|
||||||
|
9e.json completed, all passed!
|
||||||
|
9f.json completed, all passed!
|
||||||
|
a0.json completed, all passed!
|
||||||
|
a1.json completed, all passed!
|
||||||
|
a2.json completed, all passed!
|
||||||
|
a3.json completed, all passed!
|
||||||
|
a4.json completed, all passed!
|
||||||
|
a5.json completed, all passed!
|
||||||
|
a6.json completed, all passed!
|
||||||
|
a7.json completed, all passed!
|
||||||
|
a8.json completed, all passed!
|
||||||
|
a9.json completed, all passed!
|
||||||
|
aa.json completed, all passed!
|
||||||
|
ab.json completed, all passed!
|
||||||
|
ac.json completed, all passed!
|
||||||
|
ad.json completed, all passed!
|
||||||
|
ae.json completed, all passed!
|
||||||
|
af.json completed, all passed!
|
||||||
|
b0.json completed, all passed!
|
||||||
|
b1.json completed, all passed!
|
||||||
|
b2.json completed, all passed!
|
||||||
|
b3.json completed, all passed!
|
||||||
|
b4.json completed, all passed!
|
||||||
|
b5.json completed, all passed!
|
||||||
|
b6.json completed, all passed!
|
||||||
|
b7.json completed, all passed!
|
||||||
|
b8.json completed, all passed!
|
||||||
|
b9.json completed, all passed!
|
||||||
|
ba.json completed, all passed!
|
||||||
|
bb.json completed, all passed!
|
||||||
|
bc.json completed, all passed!
|
||||||
|
bd.json completed, all passed!
|
||||||
|
be.json completed, all passed!
|
||||||
|
bf.json completed, all passed!
|
||||||
|
c0.json completed, all passed!
|
||||||
|
c1.json completed, all passed!
|
||||||
|
c2.json completed, all passed!
|
||||||
|
c3.json completed, all passed!
|
||||||
|
c4.json completed, all passed!
|
||||||
|
c5.json completed, all passed!
|
||||||
|
c6.json completed, all passed!
|
||||||
|
c7.json completed, all passed!
|
||||||
|
c8.json completed, all passed!
|
||||||
|
c9.json completed, all passed!
|
||||||
|
ca.json completed, all passed!
|
||||||
|
cb 00.json completed, all passed!
|
||||||
|
cb 01.json completed, all passed!
|
||||||
|
cb 02.json completed, all passed!
|
||||||
|
cb 03.json completed, all passed!
|
||||||
|
cb 04.json completed, all passed!
|
||||||
|
cb 05.json completed, all passed!
|
||||||
|
cb 06.json completed, all passed!
|
||||||
|
cb 07.json completed, all passed!
|
||||||
|
cb 08.json completed, all passed!
|
||||||
|
cb 09.json completed, all passed!
|
||||||
|
cb 0a.json completed, all passed!
|
||||||
|
cb 0b.json completed, all passed!
|
||||||
|
cb 0c.json completed, all passed!
|
||||||
|
cb 0d.json completed, all passed!
|
||||||
|
cb 0e.json completed, all passed!
|
||||||
|
cb 0f.json completed, all passed!
|
||||||
|
cb 10.json completed, all passed!
|
||||||
|
cb 11.json completed, all passed!
|
||||||
|
cb 12.json completed, all passed!
|
||||||
|
cb 13.json completed, all passed!
|
||||||
|
cb 14.json completed, all passed!
|
||||||
|
cb 15.json completed, all passed!
|
||||||
|
cb 16.json completed, all passed!
|
||||||
|
cb 17.json completed, all passed!
|
||||||
|
cb 18.json completed, all passed!
|
||||||
|
cb 19.json completed, all passed!
|
||||||
|
cb 1a.json completed, all passed!
|
||||||
|
cb 1b.json completed, all passed!
|
||||||
|
cb 1c.json completed, all passed!
|
||||||
|
cb 1d.json completed, all passed!
|
||||||
|
cb 1e.json completed, all passed!
|
||||||
|
cb 1f.json completed, all passed!
|
||||||
|
cb 20.json completed, all passed!
|
||||||
|
cb 21.json completed, all passed!
|
||||||
|
cb 22.json completed, all passed!
|
||||||
|
cb 23.json completed, all passed!
|
||||||
|
cb 24.json completed, all passed!
|
||||||
|
cb 25.json completed, all passed!
|
||||||
|
cb 26.json completed, all passed!
|
||||||
|
cb 27.json completed, all passed!
|
||||||
|
cb 28.json completed, all passed!
|
||||||
|
cb 29.json completed, all passed!
|
||||||
|
cb 2a.json completed, all passed!
|
||||||
|
cb 2b.json completed, all passed!
|
||||||
|
cb 2c.json completed, all passed!
|
||||||
|
cb 2d.json completed, all passed!
|
||||||
|
cb 2e.json completed, all passed!
|
||||||
|
cb 2f.json completed, all passed!
|
||||||
|
cb 38.json completed, all passed!
|
||||||
|
cb 39.json completed, all passed!
|
||||||
|
cb 3a.json completed, all passed!
|
||||||
|
cb 3b.json completed, all passed!
|
||||||
|
cb 3c.json completed, all passed!
|
||||||
|
cb 3d.json completed, all passed!
|
||||||
|
cb 3e.json completed, all passed!
|
||||||
|
cb 3f.json completed, all passed!
|
||||||
|
cb 40.json completed, all passed!
|
||||||
|
cb 41.json completed, all passed!
|
||||||
|
cb 42.json completed, all passed!
|
||||||
|
cb 43.json completed, all passed!
|
||||||
|
cb 44.json completed, all passed!
|
||||||
|
cb 45.json completed, all passed!
|
||||||
|
cb 46.json completed, all passed!
|
||||||
|
cb 47.json completed, all passed!
|
||||||
|
cb 48.json completed, all passed!
|
||||||
|
cb 49.json completed, all passed!
|
||||||
|
cb 4a.json completed, all passed!
|
||||||
|
cb 4b.json completed, all passed!
|
||||||
|
cb 4c.json completed, all passed!
|
||||||
|
cb 4d.json completed, all passed!
|
||||||
|
cb 4e.json completed, all passed!
|
||||||
|
cb 4f.json completed, all passed!
|
||||||
|
cb 50.json completed, all passed!
|
||||||
|
cb 51.json completed, all passed!
|
||||||
|
cb 52.json completed, all passed!
|
||||||
|
cb 53.json completed, all passed!
|
||||||
|
cb 54.json completed, all passed!
|
||||||
|
cb 55.json completed, all passed!
|
||||||
|
cb 56.json completed, all passed!
|
||||||
|
cb 57.json completed, all passed!
|
||||||
|
cb 58.json completed, all passed!
|
||||||
|
cb 59.json completed, all passed!
|
||||||
|
cb 5a.json completed, all passed!
|
||||||
|
cb 5b.json completed, all passed!
|
||||||
|
cb 5c.json completed, all passed!
|
||||||
|
cb 5d.json completed, all passed!
|
||||||
|
cb 5e.json completed, all passed!
|
||||||
|
cb 5f.json completed, all passed!
|
||||||
|
cb 60.json completed, all passed!
|
||||||
|
cb 61.json completed, all passed!
|
||||||
|
cb 62.json completed, all passed!
|
||||||
|
cb 63.json completed, all passed!
|
||||||
|
cb 64.json completed, all passed!
|
||||||
|
cb 65.json completed, all passed!
|
||||||
|
cb 66.json completed, all passed!
|
||||||
|
cb 67.json completed, all passed!
|
||||||
|
cb 68.json completed, all passed!
|
||||||
|
cb 69.json completed, all passed!
|
||||||
|
cb 6a.json completed, all passed!
|
||||||
|
cb 6b.json completed, all passed!
|
||||||
|
cb 6c.json completed, all passed!
|
||||||
|
cb 6d.json completed, all passed!
|
||||||
|
cb 6e.json completed, all passed!
|
||||||
|
cb 6f.json completed, all passed!
|
||||||
|
cb 70.json completed, all passed!
|
||||||
|
cb 71.json completed, all passed!
|
||||||
|
cb 72.json completed, all passed!
|
||||||
|
cb 73.json completed, all passed!
|
||||||
|
cb 74.json completed, all passed!
|
||||||
|
cb 75.json completed, all passed!
|
||||||
|
cb 76.json completed, all passed!
|
||||||
|
cb 77.json completed, all passed!
|
||||||
|
cb 78.json completed, all passed!
|
||||||
|
cb 79.json completed, all passed!
|
||||||
|
cb 7a.json completed, all passed!
|
||||||
|
cb 7b.json completed, all passed!
|
||||||
|
cb 7c.json completed, all passed!
|
||||||
|
cb 7d.json completed, all passed!
|
||||||
|
cb 7e.json completed, all passed!
|
||||||
|
cb 7f.json completed, all passed!
|
||||||
|
cb 80.json completed, all passed!
|
||||||
|
cb 81.json completed, all passed!
|
||||||
|
cb 82.json completed, all passed!
|
||||||
|
cb 83.json completed, all passed!
|
||||||
|
cb 84.json completed, all passed!
|
||||||
|
cb 85.json completed, all passed!
|
||||||
|
cb 86.json completed, all passed!
|
||||||
|
cb 87.json completed, all passed!
|
||||||
|
cb 88.json completed, all passed!
|
||||||
|
cb 89.json completed, all passed!
|
||||||
|
cb 8a.json completed, all passed!
|
||||||
|
cb 8b.json completed, all passed!
|
||||||
|
cb 8c.json completed, all passed!
|
||||||
|
cb 8d.json completed, all passed!
|
||||||
|
cb 8e.json completed, all passed!
|
||||||
|
cb 8f.json completed, all passed!
|
||||||
|
cb 90.json completed, all passed!
|
||||||
|
cb 91.json completed, all passed!
|
||||||
|
cb 92.json completed, all passed!
|
||||||
|
cb 93.json completed, all passed!
|
||||||
|
cb 94.json completed, all passed!
|
||||||
|
cb 95.json completed, all passed!
|
||||||
|
cb 96.json completed, all passed!
|
||||||
|
cb 97.json completed, all passed!
|
||||||
|
cb 98.json completed, all passed!
|
||||||
|
cb 99.json completed, all passed!
|
||||||
|
cb 9a.json completed, all passed!
|
||||||
|
cb 9b.json completed, all passed!
|
||||||
|
cb 9c.json completed, all passed!
|
||||||
|
cb 9d.json completed, all passed!
|
||||||
|
cb 9e.json completed, all passed!
|
||||||
|
cb 9f.json completed, all passed!
|
||||||
|
cb a0.json completed, all passed!
|
||||||
|
cb a1.json completed, all passed!
|
||||||
|
cb a2.json completed, all passed!
|
||||||
|
cb a3.json completed, all passed!
|
||||||
|
cb a4.json completed, all passed!
|
||||||
|
cb a5.json completed, all passed!
|
||||||
|
cb a6.json completed, all passed!
|
||||||
|
cb a7.json completed, all passed!
|
||||||
|
cb a8.json completed, all passed!
|
||||||
|
cb a9.json completed, all passed!
|
||||||
|
cb aa.json completed, all passed!
|
||||||
|
cb ab.json completed, all passed!
|
||||||
|
cb ac.json completed, all passed!
|
||||||
|
cb ad.json completed, all passed!
|
||||||
|
cb ae.json completed, all passed!
|
||||||
|
cb af.json completed, all passed!
|
||||||
|
cb b0.json completed, all passed!
|
||||||
|
cb b1.json completed, all passed!
|
||||||
|
cb b2.json completed, all passed!
|
||||||
|
cb b3.json completed, all passed!
|
||||||
|
cb b4.json completed, all passed!
|
||||||
|
cb b5.json completed, all passed!
|
||||||
|
cb b6.json completed, all passed!
|
||||||
|
cb b7.json completed, all passed!
|
||||||
|
cb b8.json completed, all passed!
|
||||||
|
cb b9.json completed, all passed!
|
||||||
|
cb ba.json completed, all passed!
|
||||||
|
cb bb.json completed, all passed!
|
||||||
|
cb bc.json completed, all passed!
|
||||||
|
cb bd.json completed, all passed!
|
||||||
|
cb be.json completed, all passed!
|
||||||
|
cb bf.json completed, all passed!
|
||||||
|
cb c0.json completed, all passed!
|
||||||
|
cb c1.json completed, all passed!
|
||||||
|
cb c2.json completed, all passed!
|
||||||
|
cb c3.json completed, all passed!
|
||||||
|
cb c4.json completed, all passed!
|
||||||
|
cb c5.json completed, all passed!
|
||||||
|
cb c6.json completed, all passed!
|
||||||
|
cb c7.json completed, all passed!
|
||||||
|
cb c8.json completed, all passed!
|
||||||
|
cb c9.json completed, all passed!
|
||||||
|
cb ca.json completed, all passed!
|
||||||
|
cb cb.json completed, all passed!
|
||||||
|
cb cc.json completed, all passed!
|
||||||
|
cb cd.json completed, all passed!
|
||||||
|
cb ce.json completed, all passed!
|
||||||
|
cb cf.json completed, all passed!
|
||||||
|
cb d0.json completed, all passed!
|
||||||
|
cb d1.json completed, all passed!
|
||||||
|
cb d2.json completed, all passed!
|
||||||
|
cb d3.json completed, all passed!
|
||||||
|
cb d4.json completed, all passed!
|
||||||
|
cb d5.json completed, all passed!
|
||||||
|
cb d6.json completed, all passed!
|
||||||
|
cb d7.json completed, all passed!
|
||||||
|
cb d8.json completed, all passed!
|
||||||
|
cb d9.json completed, all passed!
|
||||||
|
cb da.json completed, all passed!
|
||||||
|
cb db.json completed, all passed!
|
||||||
|
cb dc.json completed, all passed!
|
||||||
|
cb dd.json completed, all passed!
|
||||||
|
cb de.json completed, all passed!
|
||||||
|
cb df.json completed, all passed!
|
||||||
|
cb e0.json completed, all passed!
|
||||||
|
cb e1.json completed, all passed!
|
||||||
|
cb e2.json completed, all passed!
|
||||||
|
cb e3.json completed, all passed!
|
||||||
|
cb e4.json completed, all passed!
|
||||||
|
cb e5.json completed, all passed!
|
||||||
|
cb e6.json completed, all passed!
|
||||||
|
cb e7.json completed, all passed!
|
||||||
|
cb e8.json completed, all passed!
|
||||||
|
cb e9.json completed, all passed!
|
||||||
|
cb ea.json completed, all passed!
|
||||||
|
cb eb.json completed, all passed!
|
||||||
|
cb ec.json completed, all passed!
|
||||||
|
cb ed.json completed, all passed!
|
||||||
|
cb ee.json completed, all passed!
|
||||||
|
cb ef.json completed, all passed!
|
||||||
|
cb f0.json completed, all passed!
|
||||||
|
cb f1.json completed, all passed!
|
||||||
|
cb f2.json completed, all passed!
|
||||||
|
cb f3.json completed, all passed!
|
||||||
|
cb f4.json completed, all passed!
|
||||||
|
cb f5.json completed, all passed!
|
||||||
|
cb f6.json completed, all passed!
|
||||||
|
cb f7.json completed, all passed!
|
||||||
|
cb f8.json completed, all passed!
|
||||||
|
cb f9.json completed, all passed!
|
||||||
|
cb fa.json completed, all passed!
|
||||||
|
cb fb.json completed, all passed!
|
||||||
|
cb fc.json completed, all passed!
|
||||||
|
cb fd.json completed, all passed!
|
||||||
|
cb fe.json completed, all passed!
|
||||||
|
cb ff.json completed, all passed!
|
||||||
|
cc.json completed, all passed!
|
||||||
|
cd.json completed, all passed!
|
||||||
|
ce.json completed, all passed!
|
||||||
|
cf.json completed, all passed!
|
||||||
|
d0.json completed, all passed!
|
||||||
|
d1.json completed, all passed!
|
||||||
|
d2.json completed, all passed!
|
||||||
|
d3.json completed, all passed!
|
||||||
|
d4.json completed, all passed!
|
||||||
|
d5.json completed, all passed!
|
||||||
|
d6.json completed, all passed!
|
||||||
|
d7.json completed, all passed!
|
||||||
|
d8.json completed, all passed!
|
||||||
|
d9.json completed, all passed!
|
||||||
|
da.json completed, all passed!
|
||||||
|
db.json completed, all passed!
|
||||||
|
dc.json completed, all passed!
|
||||||
|
dd 09.json completed, all passed!
|
||||||
|
dd 19.json completed, all passed!
|
||||||
|
dd 29.json completed, all passed!
|
||||||
|
dd 36.json completed, all passed!
|
||||||
|
dd 39.json completed, all passed!
|
||||||
|
dd 46.json completed, all passed!
|
||||||
|
dd 4e.json completed, all passed!
|
||||||
|
dd 56.json completed, all passed!
|
||||||
|
dd 5e.json completed, all passed!
|
||||||
|
dd 66.json completed, all passed!
|
||||||
|
dd 6e.json completed, all passed!
|
||||||
|
dd 70.json completed, all passed!
|
||||||
|
dd 71.json completed, all passed!
|
||||||
|
dd 72.json completed, all passed!
|
||||||
|
dd 73.json completed, all passed!
|
||||||
|
dd 74.json completed, all passed!
|
||||||
|
dd 75.json completed, all passed!
|
||||||
|
dd 77.json completed, all passed!
|
||||||
|
dd 7e.json completed, all passed!
|
||||||
|
dd 86.json completed, all passed!
|
||||||
|
dd 8e.json completed, all passed!
|
||||||
|
dd 96.json completed, all passed!
|
||||||
|
dd 9e.json completed, all passed!
|
||||||
|
dd a6.json completed, all passed!
|
||||||
|
dd ae.json completed, all passed!
|
||||||
|
dd b6.json completed, all passed!
|
||||||
|
dd be.json completed, all passed!
|
||||||
|
dd e1.json completed, all passed!
|
||||||
|
dd e3.json completed, all passed!
|
||||||
|
dd e5.json completed, all passed!
|
||||||
|
dd e9.json completed, all passed!
|
||||||
|
dd f9.json completed, all passed!
|
||||||
|
de.json completed, all passed!
|
||||||
|
df.json completed, all passed!
|
||||||
|
e0.json completed, all passed!
|
||||||
|
e1.json completed, all passed!
|
||||||
|
e2.json completed, all passed!
|
||||||
|
e3.json completed, all passed!
|
||||||
|
e4.json completed, all passed!
|
||||||
|
e5.json completed, all passed!
|
||||||
|
e6.json completed, all passed!
|
||||||
|
e7.json completed, all passed!
|
||||||
|
e8.json completed, all passed!
|
||||||
|
e9.json completed, all passed!
|
||||||
|
ea.json completed, all passed!
|
||||||
|
eb.json completed, all passed!
|
||||||
|
ec.json completed, all passed!
|
||||||
|
ed 40.json completed, all passed!
|
||||||
|
ed 41.json completed, all passed!
|
||||||
|
ed 42.json completed, all passed!
|
||||||
|
ed 43.json completed, all passed!
|
||||||
|
ed 44.json completed, all passed!
|
||||||
|
ed 45.json completed, all passed!
|
||||||
|
ed 46.json completed, all passed!
|
||||||
|
ed 47.json completed, all passed!
|
||||||
|
ed 48.json completed, all passed!
|
||||||
|
ed 49.json completed, all passed!
|
||||||
|
ed 4a.json completed, all passed!
|
||||||
|
ed 4b.json completed, all passed!
|
||||||
|
ed 4c.json completed, all passed!
|
||||||
|
ed 4d.json completed, all passed!
|
||||||
|
ed 4e.json completed, all passed!
|
||||||
|
ed 4f.json completed, all passed!
|
||||||
|
ed 50.json completed, all passed!
|
||||||
|
ed 51.json completed, all passed!
|
||||||
|
ed 52.json completed, all passed!
|
||||||
|
ed 53.json completed, all passed!
|
||||||
|
ed 54.json completed, all passed!
|
||||||
|
ed 55.json completed, all passed!
|
||||||
|
ed 56.json completed, all passed!
|
||||||
|
ed 57.json completed, all passed!
|
||||||
|
ed 58.json completed, all passed!
|
||||||
|
ed 59.json completed, all passed!
|
||||||
|
ed 5a.json completed, all passed!
|
||||||
|
ed 5b.json completed, all passed!
|
||||||
|
ed 5c.json completed, all passed!
|
||||||
|
ed 5d.json completed, all passed!
|
||||||
|
ed 5e.json completed, all passed!
|
||||||
|
ed 5f.json completed, all passed!
|
||||||
|
ed 60.json completed, all passed!
|
||||||
|
ed 61.json completed, all passed!
|
||||||
|
ed 62.json completed, all passed!
|
||||||
|
ed 64.json completed, all passed!
|
||||||
|
ed 65.json completed, all passed!
|
||||||
|
ed 66.json completed, all passed!
|
||||||
|
ed 67.json completed, all passed!
|
||||||
|
ed 68.json completed, all passed!
|
||||||
|
ed 69.json completed, all passed!
|
||||||
|
ed 6a.json completed, all passed!
|
||||||
|
ed 6c.json completed, all passed!
|
||||||
|
ed 6d.json completed, all passed!
|
||||||
|
ed 6e.json completed, all passed!
|
||||||
|
ed 6f.json completed, all passed!
|
||||||
|
ed 72.json completed, all passed!
|
||||||
|
ed 73.json completed, all passed!
|
||||||
|
ed 74.json completed, all passed!
|
||||||
|
ed 75.json completed, all passed!
|
||||||
|
ed 76.json completed, all passed!
|
||||||
|
ed 77.json completed, all passed!
|
||||||
|
ed 78.json completed, all passed!
|
||||||
|
ed 79.json completed, all passed!
|
||||||
|
ed 7a.json completed, all passed!
|
||||||
|
ed 7b.json completed, all passed!
|
||||||
|
ed 7c.json completed, all passed!
|
||||||
|
ed 7d.json completed, all passed!
|
||||||
|
ed 7e.json completed, all passed!
|
||||||
|
ed 7f.json completed, all passed!
|
||||||
|
ed a0.json completed, all passed!
|
||||||
|
ed a1.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed a2.json completed: 13 passed, 987 FAILED
|
||||||
|
ed a3.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed a8.json completed, all passed!
|
||||||
|
ed a9.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed aa.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed ab.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b0.json completed, all passed!
|
||||||
|
ed b1.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b2.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b3.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed b8.json completed, all passed!
|
||||||
|
ed b9.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed ba.json completed: 0 passed, 1000 FAILED
|
||||||
|
ed bb.json completed: 0 passed, 1000 FAILED
|
||||||
|
ee.json completed, all passed!
|
||||||
|
ef.json completed, all passed!
|
||||||
|
f0.json completed, all passed!
|
||||||
|
f1.json completed, all passed!
|
||||||
|
f2.json completed, all passed!
|
||||||
|
f3.json completed, all passed!
|
||||||
|
f4.json completed, all passed!
|
||||||
|
f5.json completed, all passed!
|
||||||
|
f6.json completed, all passed!
|
||||||
|
f7.json completed, all passed!
|
||||||
|
f8.json completed, all passed!
|
||||||
|
f9.json completed, all passed!
|
||||||
|
fa.json completed, all passed!
|
||||||
|
fb.json completed, all passed!
|
||||||
|
fc.json completed, all passed!
|
||||||
|
fd 09.json completed, all passed!
|
||||||
|
fd 19.json completed, all passed!
|
||||||
|
fd 29.json completed, all passed!
|
||||||
|
fd 36.json completed, all passed!
|
||||||
|
fd 39.json completed, all passed!
|
||||||
|
fd 46.json completed, all passed!
|
||||||
|
fd 4e.json completed, all passed!
|
||||||
|
fd 56.json completed, all passed!
|
||||||
|
fd 5e.json completed, all passed!
|
||||||
|
fd 66.json completed, all passed!
|
||||||
|
fd 6e.json completed, all passed!
|
||||||
|
fd 70.json completed, all passed!
|
||||||
|
fd 71.json completed, all passed!
|
||||||
|
fd 72.json completed, all passed!
|
||||||
|
fd 73.json completed, all passed!
|
||||||
|
fd 74.json completed, all passed!
|
||||||
|
fd 75.json completed, all passed!
|
||||||
|
fd 77.json completed, all passed!
|
||||||
|
fd 7e.json completed, all passed!
|
||||||
|
fd 86.json completed, all passed!
|
||||||
|
fd 8e.json completed, all passed!
|
||||||
|
fd 96.json completed, all passed!
|
||||||
|
fd 9e.json completed, all passed!
|
||||||
|
fd a6.json completed, all passed!
|
||||||
|
fd ae.json completed, all passed!
|
||||||
|
fd b6.json completed, all passed!
|
||||||
|
fd be.json completed, all passed!
|
||||||
|
fd e1.json completed, all passed!
|
||||||
|
fd e3.json completed, all passed!
|
||||||
|
fd e5.json completed, all passed!
|
||||||
|
fd e9.json completed, all passed!
|
||||||
|
fd f9.json completed, all passed!
|
||||||
|
fe.json completed, all passed!
|
||||||
|
ff.json completed, all passed!
|
||||||
|
|
||||||
|
passed: 629560, failed: 12440, total 98%
|
||||||
|
completed in 0m 32s
|
@ -7,5 +7,5 @@ RESULTS=latest.txt
|
|||||||
cd $LOCATION
|
cd $LOCATION
|
||||||
echo "Last run on $DATE at commit $COMMIT" | tee $RESULTS
|
echo "Last run on $DATE at commit $COMMIT" | tee $RESULTS
|
||||||
echo "" | tee -a $RESULTS
|
echo "" | tee -a $RESULTS
|
||||||
cargo run -- -q --testsuite "../jsmoo/misc/tests/GeneratedTests/z80/v1/" | tee -a $RESULTS
|
cargo run -- -q --testsuite "../jsmoo/misc/tests/GeneratedTests/z80/v1/" --check-timings | tee -a $RESULTS
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user