mirror of
https://github.com/trudnai/Steve2.git
synced 2024-06-02 14:41:30 +00:00
Merge branch 'speedbump'
This commit is contained in:
commit
cc76b018b0
BIN
.Apple_II_ROM.s.swp
Normal file
BIN
.Apple_II_ROM.s.swp
Normal file
Binary file not shown.
BIN
.disksectorload.log.swo
Normal file
BIN
.disksectorload.log.swo
Normal file
Binary file not shown.
187
1
Normal file
187
1
Normal file
|
@ -0,0 +1,187 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
my $state = 'begin';
|
||||
|
||||
my $trk = 0;
|
||||
my $sec = 0;
|
||||
|
||||
my @sectorData = ();
|
||||
|
||||
my $reLDA_C08C = qr/LDA\s+\$C08C,X\t0x([8-9A-Fa-f][0-9A-Fa-f])/;
|
||||
my $reLDY_C08C = qr/LDY\s+\$C08C,X\t0x([0-9A-Fa-f]{2})\t0x([0-9A-Fa-f]{2})\t0x([8-9A-Fa-f][0-9A-F])/;
|
||||
|
||||
my $reSTA_0300 = qr/STA\s+\$0300,Y\t0x([0-9A-F]{2})\t0x([0-9A-F]{2})\t0x([0-9A-F]{2})/;
|
||||
my $reSTA_26Y = qr/STA\s+\(\$26\),Y\t0x([0-9A-F]{2})\t0x([0-9A-F]{2})\t0x([0-9A-F]{2})/;
|
||||
|
||||
|
||||
sub hexdump {
|
||||
my ($arr) = @_;
|
||||
|
||||
for($i = 0; $i < scalar(@{$arr}); $i++) {
|
||||
if ( $i % 16 == 0 ) {
|
||||
printf("\n%04X: ", $i);
|
||||
}
|
||||
printf("%02X ", @{$arr}[$i]);
|
||||
}
|
||||
|
||||
print "\n";
|
||||
}
|
||||
|
||||
|
||||
while (<>) {
|
||||
|
||||
chomp;
|
||||
s/[\n\r]+//;
|
||||
|
||||
print;
|
||||
|
||||
{ # for the redo to avoid print input twice
|
||||
|
||||
if ( $state eq 'begin' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0xD5/ ) {
|
||||
print "\t marker D5";
|
||||
$state = 'loaded_D5';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_D5' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0xAA/ ) {
|
||||
print "\t marker AA";
|
||||
$state = 'loaded_AA';
|
||||
}
|
||||
elsif ( /$reLDA_C08C/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_AA' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0x96/ ) {
|
||||
print "\t marker 96";
|
||||
$state = 'loaded_96';
|
||||
print "\t; sector marker";
|
||||
}
|
||||
elsif ( /$reLDA_C08C/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_96' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker v1";
|
||||
$state = 'loaded_v1';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_v1' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker v2";
|
||||
$state = 'loaded_v2';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_v2' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker t1:$1";
|
||||
$trk = hex($1) << 1;
|
||||
$trk |= 1;
|
||||
$state = 'loaded_t1';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_t1' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker t2:$1";
|
||||
$trk &= hex($1);
|
||||
print "\t; trk:$trk";
|
||||
$state = 'loaded_t2';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_t2' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker s1:$1";
|
||||
$sec = hex($1) << 1;
|
||||
$sec |= 1;
|
||||
$state = 'loaded_s1';
|
||||
}
|
||||
}
|
||||
elsif ( $state eq 'loaded_s1' ) {
|
||||
if ( /$reLDA_C08C/ ) {
|
||||
print "\t marker s2:$1";
|
||||
$sec &= hex($1);
|
||||
print "\t; sec:$sec";
|
||||
$state = 'loaded_s2';
|
||||
}
|
||||
}
|
||||
|
||||
elsif ( $state eq 'loaded_s2' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0xD5/ ) {
|
||||
print "\t marker D5";
|
||||
$state = 'waitingfor_AA';
|
||||
}
|
||||
elsif ( /EOR\s+#\$D5/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
|
||||
elsif ( $state eq 'waitingfor_AA' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0xAA/ ) {
|
||||
print "\t marker AA 2";
|
||||
$state = 'waitingfor_AD';
|
||||
}
|
||||
elsif ( /$reLDA_C08C/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
|
||||
elsif ( $state eq 'waitingfor_AD' ) {
|
||||
if ( /LDA\s+\$C08C,X\t0xAD/ ) {
|
||||
print "\t marker AD";
|
||||
$state = 'loaded_AD';
|
||||
print "\t; sector data marker";
|
||||
}
|
||||
elsif ( /EOR\s+#\$D5/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
|
||||
elsif ( $state eq 'loaded_AD' ) {
|
||||
if ( /$reLDY_C08C/ ) {
|
||||
print "\t byte read: $3 (t:$trk s:$sec)";
|
||||
}
|
||||
elsif ( /$reSTA_0300/ ) {
|
||||
printf( "\t byte to mem: \$%04X:$1\n", 0x300 + hex($3) );
|
||||
}
|
||||
elsif ( /$reSTA_26Y/ ) {
|
||||
my $y = hex($3);
|
||||
printf( "\t byte to mem ind: (\$26)+\$%02X:$1\n", $y );
|
||||
if ($y >= 255) {
|
||||
$state = 'sector_decode';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elsif ( $state eq 'sector_decode' ) {
|
||||
if ( /$reSTA_26Y/ ) {
|
||||
$i = hex($1);
|
||||
$y = hex($3);
|
||||
printf( "\t byte to mem ind: (\$26)+\$%02X:$1\n", $y );
|
||||
$sectorData[$y] = $i;
|
||||
if ($y >= 255) {
|
||||
$state = 'sector_decode';
|
||||
print "\nHEXDUMP track: $trk sector: $sec\n";
|
||||
hexdump(\@sectorData);
|
||||
}
|
||||
}
|
||||
elsif ( /$reLDA_C08C/ ) {
|
||||
$state = 'begin';
|
||||
redo;
|
||||
}
|
||||
}
|
||||
|
||||
} # for the redo to avoid print input twice
|
||||
|
||||
print "\n";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
BIN
6502_functional_test.bin
Normal file
BIN
6502_functional_test.bin
Normal file
Binary file not shown.
14360
6502_functional_test.lst
Normal file
14360
6502_functional_test.lst
Normal file
File diff suppressed because it is too large
Load Diff
BIN
65C02_extended_opcodes_test.bin
Normal file
BIN
65C02_extended_opcodes_test.bin
Normal file
Binary file not shown.
11510
65C02_extended_opcodes_test.lst
Normal file
11510
65C02_extended_opcodes_test.lst
Normal file
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<array/>
|
||||
</plist>
|
|
@ -0,0 +1,474 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<VariablesViewState
|
||||
version = "1.0">
|
||||
<ContextStates>
|
||||
<ContextState
|
||||
contextName = "AND:6502_instr_logic.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "set_flags_V:common.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "test">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "rel_addr:Apple2_mmio.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "read_rom:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "Apple2_64K_AUX + 0xC600">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "Apple2_64K_RAM + 0xC600">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(void*)rom">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "strlen(fullPath)">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(void*)Apple2_64K_RAM">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "addr_ind_Y:Apple2_mmio.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "m6502_ColdReset:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM_PG_RD_TBL">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "set_flags_NZC:common.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "(unsigned)0xFF">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(unsigned)test ">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "mach_msg_trap:(null)">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "RAM">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.viewDidLoad():ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "y">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "textLines">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "hires.frame">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "view">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "hires.layer">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.Reset(_:):ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502.pc">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ORA:6502_instr_logic.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "BRA:6502_instr_branch.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0x346f]">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "HiRes.initMetal():HiRes.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "mtlBufferB">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "addFunction">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "device">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "mtlBufferA">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "mtlBufferC">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "set_flags_NZCV:common.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "memread8:Apple2_mmio.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ioRead:Apple2_mmio.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "clkelpased">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "clklast">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "m6502.clktime">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "phase.current">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "phase.last">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "woz_trks[track].phase[woz_track_offset]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0xC010]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "WOZread">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "phaseTransition[phase.current][phase.last]">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "textPageSelect:mmio.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "AUX[0x22]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0x22]">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "CPY:6502_instr_compare_test.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502.Y">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(int)m6502.Y - imm">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "LSRA:6502_instr_shift_rotate.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502.A">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "STR:6502_instr_load_store.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "PLA:6502_instr_stack.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "BNE:6502_instr_branch.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "PUSH:6502_instr_stack.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.Update():ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "y * (textCols + lineEndChars) + x ">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "textCols">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "textLines * (textCols+1) + textCols">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "textLines">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "txtArr">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.createHiRes():ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "container.frame">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "HiRes.draw(_:):HiRes.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "ctx?.bitsPerComponent">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "ctx?.data">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "ctx?.width">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "ctx?.bitmapInfo">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "ctx?.bytesPerRow">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "blockView.needsDisplay">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "HiResLineAddrTbl">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "HiRes.blockCols">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "shadowScreen">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(blockH7 | ( block & bitMask ))">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "linAddr">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "ctx?.height">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.currentContext.getter:ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "NSGraphicsContext.current">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "AppDelegate.Disk1_Selected(_:):AppDelegate.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "sender.identifier!.rawValue">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "m6502_Run:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "Apple2_64K_AUX + 0x3600">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "Apple2_64K_RAM + 0x3600">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "(void*)Apple2_64K_RAM">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "set_flags_NZ:common.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "CMP:6502_instr_compare_test.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "POP:6502_instr_stack.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "LDA:6502_instr_load_store.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "m6502_step:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "bp1">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "m6502.PC">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "HiRes.initHiResLineAddresses():HiRes.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "HiResLineAddrTbl">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "specialized closure #1 in ViewController.Update():ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "self.HiRes.frame">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "JMP:6502_instr_call_ret_jump.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "STA:6502_instr_load_store.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "m6502_Step:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "m6502.dbgLevel.trace">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0x51]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "disassembly">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0x50]">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ADC:6502_instr_arithmetic.h">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "m6502_run:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "RAM[0x70]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "RAM[0x74]">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "HiRes.compute():HiRes.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "UnsafeRawBufferPointer(result)">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "result[2]">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "computePipelineState.maxTotalThreadsPerThreadgroup">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "init:6502.c">
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "read_woz:6502.c">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "r">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "foffs + woz_chunk_header.size">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "woz_chunk_header.size">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "sizeof(woz_chunk_header_t)">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "dest_ind_Y:Apple2_mmio.h">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "disassembly">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
<ContextState
|
||||
contextName = "ViewController.setCPUClockSpeed(freq:):ViewController.swift">
|
||||
<PersistentStrings>
|
||||
<PersistentString
|
||||
value = "MHz_6502">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "mhz">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "fps">
|
||||
</PersistentString>
|
||||
<PersistentString
|
||||
value = "clk_6502_per_frm">
|
||||
</PersistentString>
|
||||
</PersistentStrings>
|
||||
</ContextState>
|
||||
</ContextStates>
|
||||
</VariablesViewState>
|
107
A2Mac.xcodeproj/xcshareddata/xcschemes/A2Mac.xcscheme
Normal file
107
A2Mac.xcodeproj/xcshareddata/xcschemes/A2Mac.xcscheme
Normal file
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1100"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB6822EACC660003B53F"
|
||||
BuildableName = "A2MacTests.xctest"
|
||||
BlueprintName = "A2MacTests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB7322EACC660003B53F"
|
||||
BuildableName = "A2MacUITests.xctest"
|
||||
BlueprintName = "A2MacUITests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = ""
|
||||
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
98
A2Mac.xcodeproj/xcshareddata/xcschemes/A2iOS.xcscheme
Normal file
98
A2Mac.xcodeproj/xcshareddata/xcschemes/A2iOS.xcscheme
Normal file
|
@ -0,0 +1,98 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1130"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "325EB63F23FBBACF00C6B4A4"
|
||||
BuildableName = "A2iOS.app"
|
||||
BlueprintName = "A2iOS"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "325EB65423FBBAD100C6B4A4"
|
||||
BuildableName = "A2iOSTests.xctest"
|
||||
BlueprintName = "A2iOSTests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "325EB65F23FBBAD100C6B4A4"
|
||||
BuildableName = "A2iOSUITests.xctest"
|
||||
BlueprintName = "A2iOSUITests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = ""
|
||||
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "325EB63F23FBBACF00C6B4A4"
|
||||
BuildableName = "A2iOS.app"
|
||||
BlueprintName = "A2iOS"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "325EB63F23FBBACF00C6B4A4"
|
||||
BuildableName = "A2iOS.app"
|
||||
BlueprintName = "A2iOS"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1100"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB6822EACC660003B53F"
|
||||
BuildableName = "A2MacTests.xctest"
|
||||
BlueprintName = "A2MacTests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB7322EACC660003B53F"
|
||||
BuildableName = "A2MacUITests.xctest"
|
||||
BlueprintName = "A2MacUITests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1100"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32C4531B2331FED90000EBA1"
|
||||
BuildableName = "Functiontest.app"
|
||||
BlueprintName = "Functiontest"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB6822EACC660003B53F"
|
||||
BuildableName = "A2MacTests.xctest"
|
||||
BlueprintName = "A2MacTests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB7322EACC660003B53F"
|
||||
BuildableName = "A2MacUITests.xctest"
|
||||
BlueprintName = "A2MacUITests"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32C4531B2331FED90000EBA1"
|
||||
BuildableName = "Functiontest.app"
|
||||
BlueprintName = "Functiontest"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32BFFB5622EACC630003B53F"
|
||||
BuildableName = "A2Mac.app"
|
||||
BlueprintName = "A2Mac"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
|
@ -0,0 +1,77 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1100"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "NO"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "NO"
|
||||
buildForArchiving = "NO"
|
||||
buildForAnalyzing = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32C453092331F7220000EBA1"
|
||||
BuildableName = "Speedtest.app"
|
||||
BlueprintName = "Speedtest"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32C453092331F7220000EBA1"
|
||||
BuildableName = "Speedtest.app"
|
||||
BlueprintName = "Speedtest"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = ""
|
||||
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "32C453092331F7220000EBA1"
|
||||
BuildableName = "Speedtest.app"
|
||||
BlueprintName = "Speedtest"
|
||||
ReferencedContainer = "container:A2Mac.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
|
@ -811,7 +811,7 @@
|
|||
<constraint firstAttribute="width" constant="1120" id="uez-Mi-0Sh"/>
|
||||
<constraint firstAttribute="height" constant="768" id="zl6-au-oZj"/>
|
||||
</constraints>
|
||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" refusesFirstResponder="YES" allowsUndo="NO" sendsActionOnEndEditing="YES" state="on" baseWritingDirection="leftToRight" id="pIk-RC-s5g">
|
||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" refusesFirstResponder="YES" allowsUndo="NO" sendsActionOnEndEditing="YES" state="on" baseWritingDirection="leftToRight" id="pIk-RC-s5g">
|
||||
<font key="font" size="32" name="PrintChar21"/>
|
||||
<string key="title">1234567890123456789012345678901234567890
|
||||
@@@@@@@@@1@@@@@@@@@2@@@@@@@@@3@@@@@@@@@4
|
||||
|
|
|
@ -25,9 +25,9 @@ class HiRes: NSView {
|
|||
static let blockWidth = PixelWidth / blockCols
|
||||
static let blockHeight = PixelHeight / blockRows
|
||||
|
||||
let HiResBuffer1 = UnsafeRawBufferPointer(start: RAM + Page1Addr, count: PageSize * 2)
|
||||
let HiResBuffer2 = UnsafeRawBufferPointer(start: RAM + Page2Addr, count: PageSize * 2)
|
||||
var HiResBufferPointer = UnsafeRawBufferPointer(start: RAM + Page1Addr, count: PageSize * 2)
|
||||
let HiResBuffer1 = UnsafeRawBufferPointer(start: MEM + Page1Addr, count: PageSize * 2)
|
||||
let HiResBuffer2 = UnsafeRawBufferPointer(start: MEM + Page2Addr, count: PageSize * 2)
|
||||
var HiResBufferPointer = UnsafeRawBufferPointer(start: MEM + Page1Addr, count: PageSize * 2)
|
||||
|
||||
let HiResRawPointer = UnsafeRawPointer(RAM + Page1Addr)
|
||||
|
||||
|
|
|
@ -164,8 +164,8 @@ class ViewController: NSViewController {
|
|||
// static let blockChar : Character = "░"
|
||||
// static var flashingSpace : Character = " "
|
||||
|
||||
let ramBufferPointer = UnsafeRawBufferPointer(start: RAM, count: 64 * 1024)
|
||||
let textBufferPointer = UnsafeRawBufferPointer(start: RAM + textBaseAddr, count: textBufferSize * 2)
|
||||
let ramBufferPointer = UnsafeRawBufferPointer(start: MEM, count: 64 * 1024)
|
||||
let textBufferPointer = UnsafeRawBufferPointer(start: MEM + textBaseAddr, count: textBufferSize * 2)
|
||||
let textAuxBufferPointer = UnsafeRawBufferPointer(start: AUX + textBaseAddr, count: textBufferSize)
|
||||
|
||||
static let textArraySize = textLines * (textCols + lineEndChars) + textCols * 2
|
||||
|
@ -382,9 +382,11 @@ class ViewController: NSViewController {
|
|||
var halted = true;
|
||||
|
||||
func Update() {
|
||||
clk_6502_per_frm_max = 0
|
||||
// clk_6502_per_frm_max = 0
|
||||
|
||||
clkCounter += Double(clkfrm)
|
||||
// we start a new frame from here, so CPU is running even while rendering
|
||||
clkfrm = 0
|
||||
|
||||
frameCounter += 1
|
||||
|
||||
|
@ -403,6 +405,7 @@ class ViewController: NSViewController {
|
|||
// return
|
||||
|
||||
frameCnt += 1
|
||||
|
||||
if ( frameCnt == fps / 2 ) {
|
||||
// flashingSpace = blockChar
|
||||
ViewController.charConvTbl = ViewController.charConvTblFlashOn
|
||||
|
@ -413,65 +416,68 @@ class ViewController: NSViewController {
|
|||
frameCnt = 0
|
||||
}
|
||||
|
||||
var txt : String = ""
|
||||
// Rendering is happening in the main thread, which has two implications:
|
||||
// 1. We can update UI elements
|
||||
// 2. it is independent of the simulation, de that is running in the background thread while we are busy with rendering...
|
||||
DispatchQueue.main.async {
|
||||
|
||||
var fromLines = 0
|
||||
var toLines = textLines
|
||||
var txt : String = ""
|
||||
|
||||
if videoMode.text == 0 {
|
||||
if videoMode.mixed == 1 {
|
||||
fromLines = toLines - 4
|
||||
}
|
||||
else {
|
||||
toLines = 0
|
||||
}
|
||||
}
|
||||
var fromLines = 0
|
||||
var toLines = self.textLines
|
||||
|
||||
txtArr = txtClear
|
||||
|
||||
|
||||
// render an empty space to eiminate displaying text portion of the screen covered by graphics
|
||||
for y in 0 ..< fromLines {
|
||||
if videoMode.col80 == 0 {
|
||||
txtArr[ y * (textCols + lineEndChars) + textCols ] = "\n"
|
||||
}
|
||||
else {
|
||||
txtArr[ y * (textCols * 2 + lineEndChars) + textCols * 2] = "\n"
|
||||
}
|
||||
}
|
||||
|
||||
// render the rest of the text screen
|
||||
for y in fromLines ..< toLines {
|
||||
for x in 0 ..< textCols {
|
||||
let byte = textBufferPointer[ textLineOfs[y] + x ]
|
||||
let idx = Int(byte);
|
||||
let chr = ViewController.charConvTbl[idx]
|
||||
|
||||
if videoMode.col80 == 0 {
|
||||
txtArr[ y * (textCols + lineEndChars) + x ] = chr
|
||||
if videoMode.text == 0 {
|
||||
if videoMode.mixed == 1 {
|
||||
fromLines = toLines - 4
|
||||
}
|
||||
else {
|
||||
txtArr[ y * (textCols * 2 + lineEndChars) + x * 2 + 1] = chr
|
||||
toLines = 0
|
||||
}
|
||||
}
|
||||
|
||||
let byte = textAuxBufferPointer[ textLineOfs[y] + x ]
|
||||
self.txtArr = self.txtClear
|
||||
|
||||
// render an empty space to eiminate displaying text portion of the screen covered by graphics
|
||||
for y in 0 ..< fromLines {
|
||||
if videoMode.col80 == 0 {
|
||||
self.txtArr[ y * (self.textCols + self.lineEndChars) + self.textCols ] = "\n"
|
||||
}
|
||||
else {
|
||||
self.txtArr[ y * (self.textCols * 2 + self.lineEndChars) + self.textCols * 2] = "\n"
|
||||
}
|
||||
}
|
||||
|
||||
// render the rest of the text screen
|
||||
for y in fromLines ..< toLines {
|
||||
for x in 0 ..< self.textCols {
|
||||
let byte = self.textBufferPointer[ self.textLineOfs[y] + x ]
|
||||
let idx = Int(byte);
|
||||
let chr = ViewController.charConvTbl[idx]
|
||||
|
||||
txtArr[ y * (textCols * 2 + lineEndChars) + x * 2] = chr
|
||||
if videoMode.col80 == 0 {
|
||||
self.txtArr[ y * (self.textCols + self.lineEndChars) + x ] = chr
|
||||
}
|
||||
else {
|
||||
self.txtArr[ y * (self.textCols * 2 + self.lineEndChars) + x * 2 + 1] = chr
|
||||
|
||||
let byte = self.textAuxBufferPointer[ self.textLineOfs[y] + x ]
|
||||
let idx = Int(byte);
|
||||
let chr = ViewController.charConvTbl[idx]
|
||||
|
||||
self.txtArr[ y * (self.textCols * 2 + self.lineEndChars) + x * 2] = chr
|
||||
}
|
||||
}
|
||||
|
||||
if videoMode.col80 == 0 {
|
||||
self.txtArr[ y * (self.textCols + self.lineEndChars) + self.textCols ] = "\n"
|
||||
}
|
||||
else {
|
||||
self.txtArr[ y * (self.textCols * 2 + self.lineEndChars) + self.textCols * 2] = "\n"
|
||||
}
|
||||
}
|
||||
|
||||
if videoMode.col80 == 0 {
|
||||
txtArr[ y * (textCols + lineEndChars) + textCols ] = "\n"
|
||||
}
|
||||
else {
|
||||
txtArr[ y * (textCols * 2 + lineEndChars) + textCols * 2] = "\n"
|
||||
}
|
||||
}
|
||||
txt = String(self.txtArr)
|
||||
|
||||
txt = String(txtArr)
|
||||
|
||||
DispatchQueue.main.async {
|
||||
if videoMode.col80 != self.currentVideoMode.col80 {
|
||||
self.currentVideoMode.col80 = videoMode.col80
|
||||
|
||||
|
|
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftAppKit.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftAppKit.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCore.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCore.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreData.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreData.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreFoundation.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreFoundation.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreGraphics.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreGraphics.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreImage.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftCoreImage.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftDarwin.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftDarwin.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftDispatch.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftDispatch.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftFoundation.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftFoundation.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftIOKit.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftIOKit.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftMetal.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftMetal.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftObjectiveC.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftObjectiveC.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftQuartzCore.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftQuartzCore.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftXPC.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftXPC.dylib
Executable file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftos.dylib
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/Frameworks/libswiftos.dylib
Executable file
Binary file not shown.
52
A2Mac/prod/A2Mac.app/Contents/Info.plist
Normal file
52
A2Mac/prod/A2Mac.app/Contents/Info.plist
Normal file
|
@ -0,0 +1,52 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildMachineOSBuild</key>
|
||||
<string>18F132</string>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>A2Mac</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.gamealloy.A2Mac</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>A2Mac</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>MacOSX</string>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>DTCompiler</key>
|
||||
<string>com.apple.compilers.llvm.clang.1_0</string>
|
||||
<key>DTPlatformBuild</key>
|
||||
<string>10G8</string>
|
||||
<key>DTPlatformVersion</key>
|
||||
<string>GM</string>
|
||||
<key>DTSDKBuild</key>
|
||||
<string>18G74</string>
|
||||
<key>DTSDKName</key>
|
||||
<string>macosx10.14</string>
|
||||
<key>DTXcode</key>
|
||||
<string>1030</string>
|
||||
<key>DTXcodeBuild</key>
|
||||
<string>10G8</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.education</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.14</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright © 2019 GameAlloy. All rights reserved.</string>
|
||||
<key>NSMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
</dict>
|
||||
</plist>
|
BIN
A2Mac/prod/A2Mac.app/Contents/MacOS/A2Mac
Executable file
BIN
A2Mac/prod/A2Mac.app/Contents/MacOS/A2Mac
Executable file
Binary file not shown.
1
A2Mac/prod/A2Mac.app/Contents/PkgInfo
Normal file
1
A2Mac/prod/A2Mac.app/Contents/PkgInfo
Normal file
|
@ -0,0 +1 @@
|
|||
APPL????
|
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/6502_functional_test.bin
Normal file
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/6502_functional_test.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib
generated
Normal file
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib
generated
Normal file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib
generated
Normal file
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib
generated
Normal file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib
generated
Normal file
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib
generated
Normal file
Binary file not shown.
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/apple.rom
Normal file
BIN
A2Mac/prod/A2Mac.app/Contents/Resources/apple.rom
Normal file
Binary file not shown.
307
A2Mac/prod/A2Mac.app/Contents/_CodeSignature/CodeResources
Normal file
307
A2Mac/prod/A2Mac.app/Contents/_CodeSignature/CodeResources
Normal file
|
@ -0,0 +1,307 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>files</key>
|
||||
<dict>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/Info.plist</key>
|
||||
<data>
|
||||
6AoYrKQ3DrvTjTFOS28hS2LJZo0=
|
||||
</data>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/MainMenu.nib</key>
|
||||
<data>
|
||||
AR1X5fdhmuYDefj1pzhWIprdtTg=
|
||||
</data>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib</key>
|
||||
<data>
|
||||
e02N0kNSyoLS58xvaeJNNvs5o7U=
|
||||
</data>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib</key>
|
||||
<data>
|
||||
bXljSC6cO28V+VsNqrUNOCq0GwU=
|
||||
</data>
|
||||
<key>Resources/apple.rom</key>
|
||||
<data>
|
||||
jFygw5AF37CJivLAmS95fMd1MMA=
|
||||
</data>
|
||||
</dict>
|
||||
<key>files2</key>
|
||||
<dict>
|
||||
<key>Frameworks/libswiftAppKit.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
EEZldB5IJ9RpHesgqMDMNL3mbE8=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftAppKit" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftCore.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
yLZO5FT4glZCn+WK44wbb6G9MuQ=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftCore" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftCoreData.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
5RXmxeqkT+Eom4gmjwpu/L4VWpo=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftCoreData" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftCoreFoundation.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
15U42JsstUuAgvvPlduzuZRgb2Y=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftCoreFoundation" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftCoreGraphics.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
rX6mvlo+rVwId+sxApdqWDj9tl0=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftCoreGraphics" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftCoreImage.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
Jdi29Tbt0gd+miC6HeatrVrgb5U=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftCoreImage" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftDarwin.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
XILe/3halVvWzNqo8KU+GSpLwbU=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftDarwin" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftDispatch.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
8J6F/njpkZM4uUrc+qboMANq/RU=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftDispatch" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftFoundation.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
6sdl5nbIOv8y2YGS458aTUoAv5Y=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftFoundation" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftIOKit.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
WBdgAwVaVFf42xT5ycN+pvrwFXI=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftIOKit" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftMetal.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
a6pBJtcpf+VB2xYUf9guYyXljsI=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftMetal" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftObjectiveC.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
VP0qhJG8sUl15upzEOz9FL20HQI=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftObjectiveC" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftQuartzCore.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
eSSvbBdEBb5qswjKznS971MYi2E=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftQuartzCore" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftXPC.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
AI3dcMnYeote388+0kD9cxzrbMs=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftXPC" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Frameworks/libswiftos.dylib</key>
|
||||
<dict>
|
||||
<key>cdhash</key>
|
||||
<data>
|
||||
Zx0Sx7JGoCoRsXhNGTGoqaSsqNM=
|
||||
</data>
|
||||
<key>requirement</key>
|
||||
<string>identifier "com.apple.dt.runtime.swiftos" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: Tamas Rudnai (Z7ST5Z9Q8J)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */</string>
|
||||
</dict>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/Info.plist</key>
|
||||
<dict>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
xwLd2dtY/GK5rjLbjhEc5yjMTxFoYQhVrr5WfTsPCFk=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/MainMenu.nib</key>
|
||||
<dict>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
Fs6qfQisRgsf4aocKfSKu7npHuUg1KjhjV95eh9lpKA=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib</key>
|
||||
<dict>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
U7BNL6kIHc9C61myhWj0Oek+pCAc+KtieZzYy/hXvYs=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib</key>
|
||||
<dict>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
V29XadPgSCRQGHvw6g+qEt1uqimZRlZDg1RRmDo9pus=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/apple.rom</key>
|
||||
<dict>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
N4ugDIamTMpJztrKfejV01GYPrwpXZ0R4HUv6/w0Ykk=
|
||||
</data>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>rules</key>
|
||||
<dict>
|
||||
<key>^Resources/</key>
|
||||
<true/>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^version.plist$</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>rules2</key>
|
||||
<dict>
|
||||
<key>.*\.dSYM($|/)</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>11</real>
|
||||
</dict>
|
||||
<key>^(.*/)?\.DS_Store$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>2000</real>
|
||||
</dict>
|
||||
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^.*</key>
|
||||
<true/>
|
||||
<key>^Info\.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^PkgInfo$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^[^/]+$</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^embedded\.provisionprofile$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^version\.plist$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
3
A2Mac/verticies.playground/Contents.swift
Normal file
3
A2Mac/verticies.playground/Contents.swift
Normal file
|
@ -0,0 +1,3 @@
|
|||
import Cocoa
|
||||
|
||||
var str = "Hello, playground"
|
4
A2Mac/verticies.playground/contents.xcplayground
Normal file
4
A2Mac/verticies.playground/contents.xcplayground
Normal file
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<playground version='5.0' target-platform='macos' executeOnSourceChanges='false'>
|
||||
<timeline fileName='timeline.xctimeline'/>
|
||||
</playground>
|
BIN
DISK_II_C600.ROM
Normal file
BIN
DISK_II_C600.ROM
Normal file
Binary file not shown.
0
DOS boot full trace.marked2
Normal file
0
DOS boot full trace.marked2
Normal file
0
DOS boot full trace.marked3
Normal file
0
DOS boot full trace.marked3
Normal file
BIN
Resources/.DISK_II_C600.ROM.swp
Normal file
BIN
Resources/.DISK_II_C600.ROM.swp
Normal file
Binary file not shown.
Binary file not shown.
967392
disksectorload_5.log
Normal file
967392
disksectorload_5.log
Normal file
File diff suppressed because it is too large
Load Diff
967392
disksectorload_5.marked
Normal file
967392
disksectorload_5.marked
Normal file
File diff suppressed because it is too large
Load Diff
125
disksectorload_vii.csv
Normal file
125
disksectorload_vii.csv
Normal file
|
@ -0,0 +1,125 @@
|
|||
100935 44567424 C65E: BD 8C C0 LDA $C08C,X 0x07 0x60 0x00 0x35 0xFE
|
||||
100936 44567428 C661: 10 FB BPL $C65E 0x07 0x60 0x00 0x35 0xFE
|
||||
100937 44567431 C65E: BD 8C C0 LDA $C08C,X 0x1F 0x60 0x00 0x35 0xFE
|
||||
100938 44567435 C661: 10 FB BPL $C65E 0x1F 0x60 0x00 0x35 0xFE
|
||||
100939 44567438 C65E: BD 8C C0 LDA $C08C,X 0x7F 0x60 0x00 0x35 0xFE
|
||||
100940 44567442 C661: 10 FB BPL $C65E 0x7F 0x60 0x00 0x35 0xFE
|
||||
100941 44567445 C65E: BD 8C C0 LDA $C08C,X 0xFF 0x60 0x00 0xB5 0xFE
|
||||
100942 44567449 C661: 10 FB BPL $C65E 0xFF 0x60 0x00 0xB5 0xFE
|
||||
100943 44567451 C663: 49 D5 EOR #$D5 0x2A 0x60 0x00 0x35 0xFE
|
||||
100944 44567453 C665: D0 F7 BNE $C65E 0x2A 0x60 0x00 0x35 0xFE
|
||||
100945 44567456 C65E: BD 8C C0 LDA $C08C,X 0xFF 0x60 0x00 0xB5 0xFE
|
||||
100946 44567460 C661: 10 FB BPL $C65E 0xFF 0x60 0x00 0xB5 0xFE
|
||||
100947 44567462 C663: 49 D5 EOR #$D5 0x2A 0x60 0x00 0x35 0xFE
|
||||
100948 44567464 C665: D0 F7 BNE $C65E 0x2A 0x60 0x00 0x35 0xFE
|
||||
100949 44567467 C65E: BD 8C C0 LDA $C08C,X 0x0D 0x60 0x00 0x35 0xFE
|
||||
100950 44567471 C661: 10 FB BPL $C65E 0x0D 0x60 0x00 0x35 0xFE
|
||||
100951 44567474 C65E: BD 8C C0 LDA $C08C,X 0x35 0x60 0x00 0x35 0xFE
|
||||
100952 44567478 C661: 10 FB BPL $C65E 0x35 0x60 0x00 0x35 0xFE
|
||||
100953 44567481 C65E: BD 8C C0 LDA $C08C,X 0x6A 0x60 0x00 0x35 0xFE
|
||||
100954 44567485 C661: 10 FB BPL $C65E 0x6A 0x60 0x00 0x35 0xFE
|
||||
100955 44567488 C65E: BD 8C C0 LDA $C08C,X 0xD5 0x60 0x00 0xB5 0xFE
|
||||
100956 44567492 C661: 10 FB BPL $C65E 0xD5 0x60 0x00 0xB5 0xFE
|
||||
100957 44567494 C663: 49 D5 EOR #$D5 0x00 0x60 0x00 0x37 0xFE
|
||||
100958 44567496 C665: D0 F7 BNE $C65E 0x00 0x60 0x00 0x37 0xFE
|
||||
100959 44567498 C667: BD 8C C0 LDA $C08C,X 0x0A 0x60 0x00 0x35 0xFE
|
||||
100960 44567502 C66A: 10 FB BPL $C667 0x0A 0x60 0x00 0x35 0xFE
|
||||
100961 44567505 C667: BD 8C C0 LDA $C08C,X 0x15 0x60 0x00 0x35 0xFE
|
||||
100962 44567509 C66A: 10 FB BPL $C667 0x15 0x60 0x00 0x35 0xFE
|
||||
100963 44567512 C667: BD 8C C0 LDA $C08C,X 0x55 0x60 0x00 0x35 0xFE
|
||||
100964 44567516 C66A: 10 FB BPL $C667 0x55 0x60 0x00 0x35 0xFE
|
||||
100965 44567519 C667: BD 8C C0 LDA $C08C,X 0xAA 0x60 0x00 0xB5 0xFE
|
||||
100966 44567523 C66A: 10 FB BPL $C667 0xAA 0x60 0x00 0xB5 0xFE
|
||||
100967 44567525 C66C: C9 AA CMP #$AA 0xAA 0x60 0x00 0x37 0xFE
|
||||
100968 44567527 C66E: D0 F3 BNE $C663 0xAA 0x60 0x00 0x37 0xFE
|
||||
100969 44567529 C670: EA NOP 0xAA 0x60 0x00 0x37 0xFE
|
||||
100970 44567531 C671: BD 8C C0 LDA $C08C,X 0x0A 0x60 0x00 0x35 0xFE
|
||||
100971 44567535 C674: 10 FB BPL $C671 0x0A 0x60 0x00 0x35 0xFE
|
||||
100972 44567538 C671: BD 8C C0 LDA $C08C,X 0x2B 0x60 0x00 0x35 0xFE
|
||||
100973 44567542 C674: 10 FB BPL $C671 0x2B 0x60 0x00 0x35 0xFE
|
||||
100974 44567545 C671: BD 8C C0 LDA $C08C,X 0x56 0x60 0x00 0x35 0xFE
|
||||
100975 44567549 C674: 10 FB BPL $C671 0x56 0x60 0x00 0x35 0xFE
|
||||
100976 44567552 C671: BD 8C C0 LDA $C08C,X 0xAD 0x60 0x00 0xB5 0xFE
|
||||
100977 44567556 C674: 10 FB BPL $C671 0xAD 0x60 0x00 0xB5 0xFE
|
||||
100978 44567558 C676: C9 96 CMP #$96 0xAD 0x60 0x00 0x35 0xFE
|
||||
100979 44567560 C678: F0 09 BEQ $C683 0xAD 0x60 0x00 0x35 0xFE
|
||||
100980 44567562 C67A: 28 PLP 0xAD 0x60 0x00 0x37 0xFF
|
||||
100981 44567566 C67B: 90 DF BCC $C65C 0xAD 0x60 0x00 0x37 0xFF
|
||||
100982 44567568 C67D: 49 AD EOR #$AD 0x00 0x60 0x00 0x37 0xFF
|
||||
100983 44567570 C67F: F0 25 BEQ $C6A6 0x00 0x60 0x00 0x37 0xFF
|
||||
100984 44567573 C6A6: A0 56 LDY #$56 0x00 0x60 0x56 0x35 0xFF
|
||||
100985 44567575 C6A8: 84 3C STY $3C 0x00 0x60 0x56 0x35 0xFF
|
||||
100986 44567578 C6AA: BC 8C C0 LDY $C08C,X 0x00 0x60 0xB6 0xB5 0xFF
|
||||
100987 44567582 C6AD: 10 FB BPL $C6AA 0x00 0x60 0xB6 0xB5 0xFF
|
||||
100988 44567584 C6AF: 59 D6 02 EOR $02D6,Y 0x12 0x60 0xB6 0x35 0xFF
|
||||
100989 44567589 C6B2: A4 3C LDY $3C 0x12 0x60 0x56 0x35 0xFF
|
||||
100990 44567592 C6B4: 88 DEY 0x12 0x60 0x55 0x35 0xFF
|
||||
100991 44567594 C6B5: 99 00 03 STA $0300,Y 0x12 0x60 0x55 0x35 0xFF
|
||||
100992 44567599 C6B8: D0 EE BNE $C6A8 0x12 0x60 0x55 0x35 0xFF
|
||||
100993 44567602 C6A8: 84 3C STY $3C 0x12 0x60 0x55 0x35 0xFF
|
||||
100994 44567605 C6AA: BC 8C C0 LDY $C08C,X 0x12 0x60 0x36 0x35 0xFF
|
||||
100995 44567609 C6AD: 10 FB BPL $C6AA 0x12 0x60 0x36 0x35 0xFF
|
||||
100996 44567612 C6AA: BC 8C C0 LDY $C08C,X 0x12 0x60 0xDB 0xB5 0xFF
|
||||
100997 44567616 C6AD: 10 FB BPL $C6AA 0x12 0x60 0xDB 0xB5 0xFF
|
||||
100998 44567618 C6AF: 59 D6 02 EOR $02D6,Y 0x36 0x60 0xDB 0x35 0xFF
|
||||
100999 44567623 C6B2: A4 3C LDY $3C 0x36 0x60 0x55 0x35 0xFF
|
||||
101000 44567626 C6B4: 88 DEY 0x36 0x60 0x54 0x35 0xFF
|
||||
101001 44567628 C6B5: 99 00 03 STA $0300,Y 0x36 0x60 0x54 0x35 0xFF
|
||||
101002 44567633 C6B8: D0 EE BNE $C6A8 0x36 0x60 0x54 0x35 0xFF
|
||||
101003 44567636 C6A8: 84 3C STY $3C 0x36 0x60 0x54 0x35 0xFF
|
||||
101004 44567639 C6AA: BC 8C C0 LDY $C08C,X 0x36 0x60 0x6E 0x35 0xFF
|
||||
101005 44567643 C6AD: 10 FB BPL $C6AA 0x36 0x60 0x6E 0x35 0xFF
|
||||
101006 44567646 C6AA: BC 8C C0 LDY $C08C,X 0x36 0x60 0xDC 0xB5 0xFF
|
||||
101007 44567650 C6AD: 10 FB BPL $C6AA 0x36 0x60 0xDC 0xB5 0xFF
|
||||
101008 44567652 C6AF: 59 D6 02 EOR $02D6,Y 0x13 0x60 0xDC 0x35 0xFF
|
||||
101009 44567657 C6B2: A4 3C LDY $3C 0x13 0x60 0x54 0x35 0xFF
|
||||
101010 44567660 C6B4: 88 DEY 0x13 0x60 0x53 0x35 0xFF
|
||||
101011 44567662 C6B5: 99 00 03 STA $0300,Y 0x13 0x60 0x53 0x35 0xFF
|
||||
101012 44567667 C6B8: D0 EE BNE $C6A8 0x13 0x60 0x53 0x35 0xFF
|
||||
101013 44567670 C6A8: 84 3C STY $3C 0x13 0x60 0x53 0x35 0xFF
|
||||
101014 44567673 C6AA: BC 8C C0 LDY $C08C,X 0x13 0x60 0x7A 0x35 0xFF
|
||||
101015 44567677 C6AD: 10 FB BPL $C6AA 0x13 0x60 0x7A 0x35 0xFF
|
||||
101016 44567680 C6AA: BC 8C C0 LDY $C08C,X 0x13 0x60 0xF4 0xB5 0xFF
|
||||
101017 44567684 C6AD: 10 FB BPL $C6AA 0x13 0x60 0xF4 0xB5 0xFF
|
||||
101018 44567686 C6AF: 59 D6 02 EOR $02D6,Y 0x26 0x60 0xF4 0x35 0xFF
|
||||
101019 44567691 C6B2: A4 3C LDY $3C 0x26 0x60 0x53 0x35 0xFF
|
||||
101020 44567694 C6B4: 88 DEY 0x26 0x60 0x52 0x35 0xFF
|
||||
101021 44567696 C6B5: 99 00 03 STA $0300,Y 0x26 0x60 0x52 0x35 0xFF
|
||||
101022 44567701 C6B8: D0 EE BNE $C6A8 0x26 0x60 0x52 0x35 0xFF
|
||||
101023 44567704 C6A8: 84 3C STY $3C 0x26 0x60 0x52 0x35 0xFF
|
||||
101024 44567707 C6AA: BC 8C C0 LDY $C08C,X 0x26 0x60 0xF3 0xB5 0xFF
|
||||
101025 44567711 C6AD: 10 FB BPL $C6AA 0x26 0x60 0xF3 0xB5 0xFF
|
||||
101026 44567713 C6AF: 59 D6 02 EOR $02D6,Y 0x12 0x60 0xF3 0x35 0xFF
|
||||
101027 44567718 C6B2: A4 3C LDY $3C 0x12 0x60 0x52 0x35 0xFF
|
||||
101028 44567721 C6B4: 88 DEY 0x12 0x60 0x51 0x35 0xFF
|
||||
101029 44567723 C6B5: 99 00 03 STA $0300,Y 0x12 0x60 0x51 0x35 0xFF
|
||||
101030 44567728 C6B8: D0 EE BNE $C6A8 0x12 0x60 0x51 0x35 0xFF
|
||||
101031 44567731 C6A8: 84 3C STY $3C 0x12 0x60 0x51 0x35 0xFF
|
||||
101032 44567734 C6AA: BC 8C C0 LDY $C08C,X 0x12 0x60 0x5D 0x35 0xFF
|
||||
101033 44567738 C6AD: 10 FB BPL $C6AA 0x12 0x60 0x5D 0x35 0xFF
|
||||
101034 44567741 C6AA: BC 8C C0 LDY $C08C,X 0x12 0x60 0xBB 0xB5 0xFF
|
||||
101035 44567745 C6AD: 10 FB BPL $C6AA 0x12 0x60 0xBB 0xB5 0xFF
|
||||
101036 44567747 C6AF: 59 D6 02 EOR $02D6,Y 0x04 0x60 0xBB 0x35 0xFF
|
||||
101037 44567752 C6B2: A4 3C LDY $3C 0x04 0x60 0x51 0x35 0xFF
|
||||
101038 44567755 C6B4: 88 DEY 0x04 0x60 0x50 0x35 0xFF
|
||||
101039 44567757 C6B5: 99 00 03 STA $0300,Y 0x04 0x60 0x50 0x35 0xFF
|
||||
101040 44567762 C6B8: D0 EE BNE $C6A8 0x04 0x60 0x50 0x35 0xFF
|
||||
101041 44567765 C6A8: 84 3C STY $3C 0x04 0x60 0x50 0x35 0xFF
|
||||
101042 44567768 C6AA: BC 8C C0 LDY $C08C,X 0x04 0x60 0x5E 0x35 0xFF
|
||||
101043 44567772 C6AD: 10 FB BPL $C6AA 0x04 0x60 0x5E 0x35 0xFF
|
||||
101044 44567775 C6AA: BC 8C C0 LDY $C08C,X 0x04 0x60 0xBD 0xB5 0xFF
|
||||
101045 44567779 C6AD: 10 FB BPL $C6AA 0x04 0x60 0xBD 0xB5 0xFF
|
||||
101046 44567781 C6AF: 59 D6 02 EOR $02D6,Y 0x1C 0x60 0xBD 0x35 0xFF
|
||||
101047 44567786 C6B2: A4 3C LDY $3C 0x1C 0x60 0x50 0x35 0xFF
|
||||
101048 44567789 C6B4: 88 DEY 0x1C 0x60 0x4F 0x35 0xFF
|
||||
101049 44567791 C6B5: 99 00 03 STA $0300,Y 0x1C 0x60 0x4F 0x35 0xFF
|
||||
101050 44567796 C6B8: D0 EE BNE $C6A8 0x1C 0x60 0x4F 0x35 0xFF
|
||||
101051 44567799 C6A8: 84 3C STY $3C 0x1C 0x60 0x4F 0x35 0xFF
|
||||
101052 44567802 C6AA: BC 8C C0 LDY $C08C,X 0x1C 0x60 0xCF 0xB5 0xFF
|
||||
101053 44567806 C6AD: 10 FB BPL $C6AA 0x1C 0x60 0xCF 0xB5 0xFF
|
||||
101054 44567808 C6AF: 59 D6 02 EOR $02D6,Y 0x02 0x60 0xCF 0x35 0xFF
|
||||
101055 44567813 C6B2: A4 3C LDY $3C 0x02 0x60 0x4F 0x35 0xFF
|
||||
101056 44567816 C6B4: 88 DEY 0x02 0x60 0x4E 0x35 0xFF
|
||||
101057 44567818 C6B5: 99 00 03 STA $0300,Y 0x02 0x60 0x4E 0x35 0xFF
|
||||
101058 44567823 C6B8: D0 EE BNE $C6A8 0x02 0x60 0x4E 0x35 0xFF
|
||||
101059 44567826 C6A8: 84 3C STY $3C 0x02 0x60 0x4E 0x35 0xFF
|
|
93
logfltr.pl
Executable file
93
logfltr.pl
Executable file
|
@ -0,0 +1,93 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
my $addr = "";
|
||||
my $status = 0;
|
||||
my @buf = ();
|
||||
|
||||
my $max = 5000;
|
||||
|
||||
|
||||
|
||||
while(<>) {
|
||||
if ($status == 0) {
|
||||
if (/([0-9A-F]{4}):( [0-9A-F]{2}){3}\s*LDA \$C08C,X/) {
|
||||
# print("DEBUG: 0 LDA\n");
|
||||
$status = 1;
|
||||
push(@buf, $_);
|
||||
$addr = $1;
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: 0 no LDA\n");
|
||||
print;
|
||||
}
|
||||
}
|
||||
elsif ($status == 1) {
|
||||
if (/BPL \$$addr/) {
|
||||
# print("DEBUG: 1 BPL\n");
|
||||
$status = 2;
|
||||
push(@buf, $_);
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: 1 no BPL\n");
|
||||
$status = 0;
|
||||
print @buf;
|
||||
@buf = ();
|
||||
print;
|
||||
}
|
||||
}
|
||||
elsif ($status == 2) {
|
||||
if (/EOR #\$D5/) {
|
||||
# print("DEBUG: 2 EOR\n");
|
||||
$status = 3;
|
||||
push(@buf, $_);
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: 2 no EOR\n");
|
||||
$status = 0;
|
||||
print @buf;
|
||||
@buf = ();
|
||||
print;
|
||||
}
|
||||
}
|
||||
elsif ($status == 3) {
|
||||
if (/BNE \$$addr/) {
|
||||
# print("DEBUG: 3 BNE\n");
|
||||
$status = 4;
|
||||
push(@buf, $_);
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: 3 no BNE\n");
|
||||
$status = 0;
|
||||
print @buf;
|
||||
@buf = ();
|
||||
print;
|
||||
}
|
||||
}
|
||||
elsif ($status == 4) {
|
||||
if (/$addr:( [0-9A-F]{2}){3}\s*LDA \$C08C,X/) {
|
||||
# print("DEBUG: 4 LDA\n");
|
||||
$status = 1;
|
||||
@buf = ();
|
||||
push(@buf, $_);
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: 4 no LDA\n");
|
||||
$status = 0;
|
||||
print @buf, "\n";
|
||||
@buf = ();
|
||||
print;
|
||||
}
|
||||
}
|
||||
else {
|
||||
# print("DEBUG: else\n");
|
||||
$status = 0;
|
||||
print @buf;
|
||||
@buf = ();
|
||||
print;
|
||||
}
|
||||
|
||||
# if( -- $max <= 0 ) {
|
||||
# last;
|
||||
# }
|
||||
}
|
||||
|
|
@ -713,7 +713,8 @@ void m6502_Run() {
|
|||
#ifdef SPEEDTEST
|
||||
for ( inst_cnt = 0; inst_cnt < iterations ; inst_cnt++ )
|
||||
#elif defined( CLK_WAIT )
|
||||
for ( clkfrm = 0; clkfrm < clk_6502_per_frm_max ; clkfrm += clk )
|
||||
// we clear the clkfrm from ViewController Update()
|
||||
for ( ; clkfrm < clk_6502_per_frm_max ; clkfrm += clk )
|
||||
#else
|
||||
// for ( ; m6502.pc ; )
|
||||
for ( ; ; )
|
||||
|
@ -886,28 +887,14 @@ void rom_loadFile( const char * bundlePath, const char * filename ) {
|
|||
|
||||
else if ( flen == 16 * KB ) {
|
||||
read_rom( bundlePath, filename, Apple2_16K_ROM, 0);
|
||||
memcpy(Apple2_12K_ROM + 0x0000, Apple2_16K_ROM + 0x1000, sizeof(Apple2_12K_ROM));
|
||||
// memcpy(Apple2_64K_RAM + 0xC000, Apple2_16K_ROM, 0x1000);
|
||||
|
||||
// SWITCH_CX_ROM( RAM_PG_RD_TBL, 0xC0, Apple2_16K_ROM, 0x00);
|
||||
memcpy(Apple2_64K_MEM + 0xC000, Apple2_16K_ROM, 16 * KB);
|
||||
}
|
||||
|
||||
else if ( flen == 12 * KB ) {
|
||||
read_rom( bundlePath, filename, Apple2_12K_ROM, 0);
|
||||
// memcpy(Apple2_64K_RAM + 0xD000, Apple2_12K_ROM, sizeof(Apple2_12K_ROM));
|
||||
read_rom( bundlePath, filename, Apple2_16K_ROM, 0x1000);
|
||||
memcpy(Apple2_64K_MEM + 0xD000, Apple2_16K_ROM + 0x1000, 12 * KB);
|
||||
}
|
||||
|
||||
// read_rom( bundlePath, "Apple2Plus.rom", Apple2_12K_ROM, 0);
|
||||
// read_rom( bundlePath, "Apple2e.rom", Apple2_16K_ROM, 0);
|
||||
// read_rom( bundlePath, "Apple2e_Enhanced.rom", Apple2_16K_ROM, 0);
|
||||
|
||||
// read_rom( "/Users/trudnai/Library/Containers/com.gamealloy.A2Mac/Data/", "Apple2Plus.rom", Apple2_12K_ROM, 0);
|
||||
// read_rom("/Users/trudnai/Library/Containers/com.gamealloy.A2Mac/Data/Apple2Plus.rom", Apple2_12K_ROM, 0);
|
||||
|
||||
// memcpy(Apple2_64K_RAM + 0xD000, Apple2_12K_ROM, sizeof(Apple2_12K_ROM));
|
||||
// memcpy(Apple2_12K_ROM + 0x0000, Apple2_16K_ROM + 0x1000, sizeof(Apple2_12K_ROM));
|
||||
// memcpy(Apple2_64K_RAM + 0xC000, Apple2_16K_ROM, sizeof(Apple2_16K_ROM));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -957,7 +944,9 @@ void m6502_ColdReset( const char * bundlePath, const char * romFileName ) {
|
|||
|
||||
// Disk ][ ROM in Slot 6
|
||||
read_rom( bundlePath, "DISK_II_C600.ROM", Apple2_64K_RAM, 0xC600);
|
||||
// read_rom( "/Users/trudnai/Library/Containers/com.gamealloy.A2Mac/Data/", "DISK_II_C600.ROM", Apple2_64K_RAM, 0xC600);
|
||||
memcpy(Apple2_64K_MEM + 0xC600, Apple2_64K_RAM + 0xC600, 0x100);
|
||||
|
||||
// read_rom( "/Users/trudnai/Library/Containers/com.gamealloy.A2Mac/Data/", "DISK_II_C600.ROM", Apple2_64K_MEM, 0xC600);
|
||||
|
||||
m6502.A = m6502.X = m6502.Y = 0xFF;
|
||||
// reset vector
|
||||
|
|
|
@ -129,7 +129,7 @@ extern MEMcfg_t MEMcfg;
|
|||
extern m6502_t m6502;
|
||||
extern uint8_t * const AUX; // Pointer to the auxiliary memory so we can use this from Swift
|
||||
extern uint8_t * const RAM;
|
||||
//extern uint8_t * AUX_VID_RAM;
|
||||
extern uint8_t * const MEM; // Pointer to the Shadow Memory Map so we can use this from Swift//extern uint8_t * AUX_VID_RAM;
|
||||
extern uint32_t * videoMemPtr;
|
||||
|
||||
extern void hires_Update(void);
|
||||
|
|
|
@ -92,15 +92,7 @@ char * charConv =
|
|||
**/
|
||||
INLINE void STR( uint16_t addr, uint8_t src ) {
|
||||
dbgPrintf("STR [%04X], %02X ", addr, src );
|
||||
|
||||
// I/O or ROM or RAM EXP
|
||||
if ( ( addr >= 0xC000 ) && ( addr < 0xC100 ) ) {
|
||||
return ioWrite( addr, src );
|
||||
}
|
||||
|
||||
// DO NOT MAKE IT NICER! faster this way!
|
||||
*(RAM_PG_WR_TBL[ addr >> 8 ] + (addr & 0xFF)) = src;
|
||||
// RAM[addr] = src;
|
||||
memwrite(addr, src);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -13,14 +13,12 @@ static const uint16_t stack_base_addr = 0x100;
|
|||
|
||||
|
||||
INLINE void PUSH( uint8_t src ) {
|
||||
// RAM[ stack_base_addr | m6502.SP-- ] = src;
|
||||
// DO NOT MAKE IT NICER! faster this way!
|
||||
*( RAM_PG_WR_TBL[ stack_base_addr >> 8 ] + m6502.SP-- ) = src;
|
||||
WRLOMEM[ stack_base_addr | m6502.SP-- ] = src;
|
||||
}
|
||||
|
||||
INLINE uint8_t POP() {
|
||||
// return RAM[ stack_base_addr | ++m6502.SP ];
|
||||
return *( RAM_PG_WR_TBL[ stack_base_addr >> 8 ] + ++m6502.SP );
|
||||
return RDLOMEM[ stack_base_addr | ++m6502.SP ];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ disk_t disk = {
|
|||
0, // clk_since_last_read
|
||||
};
|
||||
|
||||
const int diskAccelerator_frames = 5;
|
||||
const int diskAccelerator_frames = 3;
|
||||
int diskAccelerator_count = 10;
|
||||
int diskAccelerator_speed = 25; // less than actual CPU speed means no acceleration
|
||||
//const unsigned long long clk_6502_per_frm_diskAccelerator = 25 * M / fps; // disk acceleration bumps up CPU clock to 25 MHz
|
||||
|
|
|
@ -27,17 +27,25 @@ typedef union address16_u {
|
|||
videoMode_t videoMode = { 1 }; // 40 col text, page 1
|
||||
|
||||
|
||||
uint8_t Apple2_Dummy_Page[ 1 * PG ]; // Dummy Page for discarding data
|
||||
uint8_t Apple2_Dummy_RAM[ 4 * KB ]; // Dummy RAM for discarding data
|
||||
uint8_t Apple2_12K_ROM[ 12 * KB ] = {0}; // ROM D0, D8, E0, E8, F0, F8
|
||||
uint8_t Apple2_16K_ROM[ 16 * KB ] = {0}; // ROM C0, C8, D0, D8, E0, E8, F0, F8
|
||||
uint8_t Apple2_16K_RAM[ 16 * KB ] = {0}; // 16K Memory Expansion Card
|
||||
uint8_t Apple2_64K_AUX[ 64 * KB ] = {0}; // 64K Expansion Memory
|
||||
uint8_t Apple2_64K_RAM[ 64 * KB ] = {0}; // Main Memory
|
||||
uint8_t Apple2_Dummy_Page[ 1 * PG ]; // Dummy Page to discard data
|
||||
uint8_t Apple2_Dummy_RAM[ 64 * KB ]; // Dummy RAM to discard data
|
||||
|
||||
uint8_t Apple2_16K_ROM[ 16 * KB ] = {0}; // ROM C0, C8, D0, D8, E0, E8, F0, F8
|
||||
|
||||
uint8_t Apple2_64K_AUX[ 64 * KB ] = {0}; // 64K Expansion Memory
|
||||
uint8_t Apple2_64K_RAM[ 64 * KB ] = {0}; // Main Memory
|
||||
uint8_t Apple2_64K_MEM[ 64 * KB ] = {0}; // Shadow Copy of Memory (or current memory content)
|
||||
|
||||
//uint8_t * AUX_VID_RAM = Apple2_VID_AUX; // Pointer to Auxiliary Video Memory
|
||||
uint8_t * const AUX = Apple2_64K_AUX; // Pointer to the Auxiliary Memory so we can use this from Swift
|
||||
uint8_t * const RAM = Apple2_64K_RAM; // Pointer to the Main Memory so we can use this from Swift
|
||||
uint8_t * const MEM = Apple2_64K_MEM; // Pointer to the Shadow Memory Map so we can use this from Swift
|
||||
|
||||
uint8_t * const RDLOMEM = Apple2_64K_MEM; // Pointer to the Shadow Memory Map so we can use this from Swift
|
||||
uint8_t * const WRLOMEM = Apple2_64K_MEM; // Pointer to the Shadow Memory Map so we can use this from Swift
|
||||
uint8_t * const RDHIMEM = Apple2_64K_MEM; // Pointer to the Shadow Memory Map so we can use this from Swift
|
||||
uint8_t * const WRHIMEM = Apple2_Dummy_RAM; // Pointer to the Shadow Memory Map so we can use this from Swift
|
||||
|
||||
//uint8_t * AUX_VID_RAM = Apple2_VID_AUX; // Pointer to Auxiliary Video Memory
|
||||
uint8_t * const AUX = Apple2_64K_AUX; // Pointer to the auxiliary memory so we can use this from Swift
|
||||
uint8_t * const RAM = Apple2_64K_RAM; // Pointer to the main memory so we can use this from Swift
|
||||
|
||||
|
||||
#define DEF_RAM_PAGE(mem,pg) \
|
||||
|
@ -180,72 +188,6 @@ uint8_t * const RAM = Apple2_64K_RAM; // Pointer to the main memory
|
|||
NULL, \
|
||||
NULL
|
||||
|
||||
uint8_t * RAM_PG_RD_TBL[256] = {
|
||||
// 48K main memory
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x00),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x10),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x20),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x30),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x40),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x50),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x60),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x70),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x80),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x90),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xA0),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xB0),
|
||||
// I/O Addresses
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xC0),
|
||||
// Reading from the ROM
|
||||
DEF_RAM_PAGE16( Apple2_12K_ROM, 0x00), // D0
|
||||
DEF_RAM_PAGE16( Apple2_12K_ROM, 0x10), // E0
|
||||
DEF_RAM_PAGE16( Apple2_12K_ROM, 0x20) // F0
|
||||
};
|
||||
|
||||
uint8_t * RAM_PG_WR_TBL[256] = {
|
||||
// 48K main memory
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x00),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x10),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x20),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x30),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x40),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x50),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x60),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x70),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x80),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0x90),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xA0),
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xB0),
|
||||
// I/O Addresses
|
||||
// DEF_RAM_DUMMY16,
|
||||
|
||||
DEF_RAM_PAGE16( Apple2_64K_RAM, 0xC0),
|
||||
|
||||
// DEF_RAM_PAGE(Apple2_64K_RAM, 0xC0),
|
||||
// // SLOT ROM is non-writeable
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 01
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 02
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 03
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 04
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 05
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 06
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 07
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 08
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 09
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0A
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0B
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0C
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0D
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0E
|
||||
// DEF_RAM_PAGE(Apple2_Dummy_Page, 0), // 0F
|
||||
|
||||
// NO Writing to the ROM
|
||||
DEF_RAM_DUMMY16,
|
||||
DEF_RAM_DUMMY16,
|
||||
DEF_RAM_DUMMY16,
|
||||
};
|
||||
|
||||
|
||||
|
||||
enum slot {
|
||||
SLOT0 = 0x00,
|
||||
|
@ -354,46 +296,8 @@ enum mmio {
|
|||
|
||||
|
||||
void resetMemory() {
|
||||
// 48K main memory
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x00, Apple2_64K_RAM, 0x00)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x10, Apple2_64K_RAM, 0x10)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x20, Apple2_64K_RAM, 0x20)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x30, Apple2_64K_RAM, 0x30)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x40, Apple2_64K_RAM, 0x40)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x50, Apple2_64K_RAM, 0x50)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x60, Apple2_64K_RAM, 0x60)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x70, Apple2_64K_RAM, 0x70)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x80, Apple2_64K_RAM, 0x80)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0x90, Apple2_64K_RAM, 0x90)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xA0, Apple2_64K_RAM, 0xA0)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xB0, Apple2_64K_RAM, 0xB0)
|
||||
// I/O Addresses
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xC0, Apple2_64K_RAM, 0xC0)
|
||||
// Reading from the ROM
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xD0, Apple2_12K_ROM, 0x00) // D0
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xE0, Apple2_12K_ROM, 0x10) // E0
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xF0, Apple2_12K_ROM, 0x20) // F0
|
||||
|
||||
// 48K main memory
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x00, Apple2_64K_RAM, 0x00)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x10, Apple2_64K_RAM, 0x10)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x20, Apple2_64K_RAM, 0x20)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x30, Apple2_64K_RAM, 0x30)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x40, Apple2_64K_RAM, 0x40)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x50, Apple2_64K_RAM, 0x50)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x60, Apple2_64K_RAM, 0x60)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x70, Apple2_64K_RAM, 0x70)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x80, Apple2_64K_RAM, 0x80)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0x90, Apple2_64K_RAM, 0x90)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xA0, Apple2_64K_RAM, 0xA0)
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xB0, Apple2_64K_RAM, 0xB0)
|
||||
// I/O Addresses
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xC0, Apple2_64K_RAM, 0xC0)
|
||||
// NO Writing to the ROM
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xD0, Apple2_Dummy_RAM, 0 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xE0, Apple2_Dummy_RAM, 0 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xF0, Apple2_Dummy_RAM, 0 );
|
||||
|
||||
// Reset memory configuration
|
||||
MEMcfg.RAM_16K = 0;
|
||||
MEMcfg.RAM_128K = 1;
|
||||
MEMcfg.RD_RAM = 0;
|
||||
|
@ -404,9 +308,8 @@ void resetMemory() {
|
|||
MEMcfg.RD_AUX_MEM = 0;
|
||||
MEMcfg.WR_AUX_MEM = 0;
|
||||
MEMcfg.int_Cx_ROM = 0;
|
||||
MEMcfg.slot_C3_ROM = 0;
|
||||
MEMcfg.ALT_ZP = 0;
|
||||
MEMcfg.RD_AUX_MEM = 0;
|
||||
MEMcfg.WR_AUX_MEM = 0;
|
||||
MEMcfg.txt_page_2 = 0;
|
||||
|
||||
|
||||
|
@ -414,46 +317,78 @@ void resetMemory() {
|
|||
memset( Apple2_64K_AUX, 0, sizeof(Apple2_64K_AUX) );
|
||||
// 64K Main Memory Area
|
||||
memset( Apple2_64K_RAM, 0, sizeof(Apple2_64K_RAM) );
|
||||
// 16K Memory Expansion
|
||||
memset( Apple2_16K_RAM, 0, sizeof(Apple2_16K_RAM) );
|
||||
memset( Apple2_64K_MEM, 0, sizeof(Apple2_64K_MEM) );
|
||||
// I/O area should be 0 -- just in case we decide to init RAM with a different pattern...
|
||||
memset( Apple2_64K_RAM + 0xC000, 0, 0x1000 );
|
||||
|
||||
}
|
||||
|
||||
|
||||
static uint8_t page2 = 0;
|
||||
|
||||
void textPageSelect() {
|
||||
if ( MEMcfg.is_80STORE && MEMcfg.txt_page_2 ) {
|
||||
SWITCH_VIDEO_RAM( RAM_PG_RD_TBL, 0x04, Apple2_64K_AUX, 0x04)
|
||||
SWITCH_VIDEO_RAM( RAM_PG_WR_TBL, 0x04, Apple2_64K_AUX, 0x04)
|
||||
}
|
||||
else {
|
||||
SWITCH_VIDEO_RAM( RAM_PG_RD_TBL, 0x04, Apple2_64K_RAM, 0x04)
|
||||
SWITCH_VIDEO_RAM( RAM_PG_WR_TBL, 0x04, Apple2_64K_RAM, 0x04)
|
||||
uint8_t * shadow = Apple2_64K_MEM + 0x400;
|
||||
|
||||
if ( page2 != MEMcfg.txt_page_2 ) {
|
||||
page2 = MEMcfg.txt_page_2;
|
||||
|
||||
if ( MEMcfg.is_80STORE && MEMcfg.txt_page_2 ) {
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_RAM + 0x400, shadow, 0x400);
|
||||
|
||||
// load the content of Video Page 2
|
||||
memcpy(shadow, Apple2_64K_AUX, 0x400);
|
||||
|
||||
}
|
||||
else {
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_AUX + 0x400, shadow, 0x400);
|
||||
|
||||
// load the content of Video Page 2
|
||||
memcpy(shadow, Apple2_64K_RAM, 0x400);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
void auxMemorySelect() {
|
||||
uint8_t * shadow = Apple2_64K_MEM + 0x200;
|
||||
uint8_t * memory;
|
||||
|
||||
if ( MEMcfg.is_80STORE ) {
|
||||
if ( MEMcfg.RD_AUX_MEM ) {
|
||||
SWITCH_AUX_MEM( RAM_PG_RD_TBL, Apple2_64K_AUX );
|
||||
memory = Apple2_64K_AUX + 0x200;
|
||||
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_RAM + 0x200, shadow, 0xA00);
|
||||
|
||||
// load the content of Aux Memory
|
||||
memcpy(Apple2_64K_MEM + 0x200, Apple2_64K_AUX, 0xA00);
|
||||
}
|
||||
else {
|
||||
SWITCH_AUX_MEM( RAM_PG_RD_TBL, Apple2_64K_RAM );
|
||||
memory = Apple2_64K_RAM + 0x200;
|
||||
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_AUX + 0x200, shadow, 0xA00);
|
||||
|
||||
// load the content of Int Memory
|
||||
memcpy(Apple2_64K_MEM + 0x200, Apple2_64K_RAM, 0xA00);
|
||||
}
|
||||
|
||||
if ( MEMcfg.WR_AUX_MEM ) {
|
||||
SWITCH_AUX_MEM( RAM_PG_WR_TBL, Apple2_64K_AUX );
|
||||
// TODO: set write table for AUX
|
||||
}
|
||||
else {
|
||||
SWITCH_AUX_MEM( RAM_PG_WR_TBL, Apple2_64K_RAM );
|
||||
// TODO: set write table for RAM
|
||||
}
|
||||
}
|
||||
else {
|
||||
SWITCH_AUX_MEM( RAM_PG_RD_TBL, Apple2_64K_RAM );
|
||||
SWITCH_AUX_MEM( RAM_PG_WR_TBL, Apple2_64K_RAM );
|
||||
// TODO: set read table for RAM
|
||||
}
|
||||
|
||||
// load new content to shadow memory
|
||||
memcpy(shadow, memory, 0xA00);
|
||||
}
|
||||
|
||||
|
||||
|
@ -568,7 +503,7 @@ INLINE uint8_t ioRead( uint16_t addr ) {
|
|||
case io_MEM_RDROM_NOWR_1:
|
||||
case io_MEM_RDRAM_WRAM_1:
|
||||
if ( MEMcfg.RAM_16K || MEMcfg.RAM_128K ) {
|
||||
uint8_t * RAM_BANK = Apple2_16K_RAM;
|
||||
uint8_t * RAM_BANK = Apple2_64K_AUX + 0xC000;
|
||||
|
||||
// RAM Bank 1 or 2?
|
||||
switch (addr) {
|
||||
|
@ -577,12 +512,12 @@ INLINE uint8_t ioRead( uint16_t addr ) {
|
|||
case io_MEM_RDROM_NOWR_2:
|
||||
case io_MEM_RDRAM_WRAM_2:
|
||||
MEMcfg.RAM_BANK_2 = 1;
|
||||
RAM_BANK = Apple2_16K_RAM + 0x30;
|
||||
RAM_BANK = Apple2_64K_AUX + 0xD000;
|
||||
break;
|
||||
|
||||
default:
|
||||
MEMcfg.RAM_BANK_2 = 0;
|
||||
RAM_BANK = Apple2_16K_RAM;
|
||||
RAM_BANK = Apple2_64K_AUX + 0xC000;
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -593,18 +528,26 @@ INLINE uint8_t ioRead( uint16_t addr ) {
|
|||
case io_MEM_RDRAM_NOWR_1:
|
||||
case io_MEM_RDRAM_WRAM_1:
|
||||
MEMcfg.RD_RAM = 1;
|
||||
|
||||
uint8_t * shadow = Apple2_64K_MEM + 0xD000;
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_RAM + 0xD000, shadow, 0x3000);
|
||||
// load the content of Aux Memory
|
||||
memcpy(Apple2_64K_MEM + 0xD000, Apple2_64K_AUX, 0x3000);
|
||||
|
||||
// set the RAM extension to read on the upper memory area
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xD0, RAM_BANK, 0x00 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xE0, Apple2_16K_RAM, 0x10 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xF0, Apple2_16K_RAM, 0x20 );
|
||||
break;
|
||||
|
||||
default:
|
||||
MEMcfg.RD_RAM = 0;
|
||||
|
||||
shadow = Apple2_64K_MEM + 0xD000;
|
||||
// save the content of Shadow Memory
|
||||
memcpy(Apple2_64K_AUX + 0xD000, shadow, 0x3000);
|
||||
// load the content of ROM Memory
|
||||
memcpy(Apple2_64K_MEM + 0xD000, Apple2_16K_ROM + 0x1000, 0x3000);
|
||||
|
||||
// set the ROM to read on the upper memory area
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xD0, Apple2_12K_ROM, 0x00 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xE0, Apple2_12K_ROM, 0x10 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_RD_TBL, 0xF0, Apple2_12K_ROM, 0x20 );
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -616,17 +559,11 @@ INLINE uint8_t ioRead( uint16_t addr ) {
|
|||
case io_MEM_RDRAM_WRAM_1:
|
||||
MEMcfg.WR_RAM = 1;
|
||||
// set the RAM extension to read from the upper memory area
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xD0, RAM_BANK, 0x00 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xE0, Apple2_16K_RAM, 0x10 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xF0, Apple2_16K_RAM, 0x20 );
|
||||
break;
|
||||
|
||||
default:
|
||||
MEMcfg.WR_RAM = 0;
|
||||
// set the ROM to read on the upper memory area
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xD0, Apple2_Dummy_RAM, 0 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xE0, Apple2_Dummy_RAM, 0 );
|
||||
SWITCH_RAM_PAGE16( RAM_PG_WR_TBL, 0xF0, Apple2_Dummy_RAM, 0 );
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -764,38 +701,36 @@ INLINE void ioWrite( uint16_t addr, uint8_t val ) {
|
|||
|
||||
case io_SETSTDZP:
|
||||
MEMcfg.ALT_ZP = 0;
|
||||
SWITCH_STACK_ZP(RAM_PG_RD_TBL, Apple2_64K_RAM);
|
||||
SWITCH_STACK_ZP(RAM_PG_WR_TBL, Apple2_64K_RAM);
|
||||
// TODO: set zero page table to RAM
|
||||
break;
|
||||
|
||||
case io_SETALTZP:
|
||||
MEMcfg.ALT_ZP = 1;
|
||||
SWITCH_STACK_ZP(RAM_PG_RD_TBL, Apple2_64K_AUX);
|
||||
SWITCH_STACK_ZP(RAM_PG_WR_TBL, Apple2_64K_AUX);
|
||||
// TODO: set zero page table to AUX
|
||||
break;
|
||||
|
||||
case io_SETSLOTCXROM:
|
||||
// printf("io_SETSLOTCXROM\n");
|
||||
MEMcfg.int_Cx_ROM = 0;
|
||||
SWITCH_CX_ROM( RAM_PG_RD_TBL, 0xC0, Apple2_64K_RAM, 0xC0);
|
||||
// TODO: set Cx00 ROM area table to SLOT
|
||||
break;
|
||||
|
||||
case io_SETINTCXROM:
|
||||
// printf("io_SETINTCXROM\n");
|
||||
MEMcfg.int_Cx_ROM = 1;
|
||||
SWITCH_CX_ROM( RAM_PG_RD_TBL, 0xC0, Apple2_16K_ROM, 0x00);
|
||||
// TODO: set Cx00 ROM area table to INT
|
||||
break;
|
||||
|
||||
case io_SETSLOTC3ROM:
|
||||
// printf("io_SETSLOTC3ROM\n");
|
||||
MEMcfg.slot_C3_ROM = 1;
|
||||
SWITCH_ROM_PAGE( RAM_PG_RD_TBL, 0xC3, Apple2_64K_RAM, 0xC3);
|
||||
// TODO: set C300 ROM area table to SLOT
|
||||
break;
|
||||
|
||||
case io_SETINTC3ROM:
|
||||
// printf("io_SETINTC3ROM\n");
|
||||
MEMcfg.slot_C3_ROM = 0;
|
||||
SWITCH_ROM_PAGE( RAM_PG_RD_TBL, 0xC3, Apple2_16K_ROM, 0x03);
|
||||
// TODO: set C300 ROM area table to INT
|
||||
break;
|
||||
|
||||
case io_VID_CLR80VID:
|
||||
|
@ -852,24 +787,51 @@ INLINE void ioWrite( uint16_t addr, uint8_t val ) {
|
|||
/**
|
||||
Naive implementation of RAM read from address
|
||||
**/
|
||||
INLINE uint8_t memread8_low( uint16_t addr ) {
|
||||
return RDLOMEM[addr];
|
||||
}
|
||||
INLINE uint8_t memread8_high( uint16_t addr ) {
|
||||
return RDHIMEM[addr];
|
||||
}
|
||||
INLINE uint8_t memread8( uint16_t addr ) {
|
||||
return * ( RAM_PG_RD_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
// return RAM[addr];
|
||||
if (addr >= 0xC000) {
|
||||
return memread8_high(addr);
|
||||
}
|
||||
|
||||
return memread8_low(addr);
|
||||
}
|
||||
/**
|
||||
Naive implementation of RAM read from address
|
||||
**/
|
||||
INLINE uint16_t memread16_low( uint16_t addr ) {
|
||||
return * (uint16_t*) ( RDLOMEM + addr );
|
||||
}
|
||||
INLINE uint16_t memread16_high( uint16_t addr ) {
|
||||
return * (uint16_t*) ( RDHIMEM + addr );
|
||||
}
|
||||
INLINE uint16_t memread16( uint16_t addr ) {
|
||||
return * (uint16_t*) ( RAM_PG_RD_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
// return * (uint16_t*) (RAM + addr);
|
||||
|
||||
if (addr >= 0xC000) {
|
||||
return memread16_high(addr);
|
||||
}
|
||||
|
||||
return memread16_low(addr);
|
||||
}
|
||||
|
||||
INLINE uint8_t memread( uint16_t addr ) {
|
||||
if ( (addr >= 0xC000) && (addr <= 0xC0FF) ) {
|
||||
return ioRead(addr);
|
||||
if (addr >= 0xC000) {
|
||||
if (addr < 0xC100) {
|
||||
return ioRead(addr);
|
||||
}
|
||||
|
||||
// return memread8_paged(addr);
|
||||
return memread8_high(addr);
|
||||
}
|
||||
|
||||
return memread8(addr);
|
||||
// return memread8_paged(addr);
|
||||
return memread8_low(addr);
|
||||
|
||||
// return memread8(addr);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -891,19 +853,27 @@ INLINE uint8_t memread( uint16_t addr ) {
|
|||
/**
|
||||
Naive implementation of RAM write to address
|
||||
**/
|
||||
static void memwrite( uint16_t addr, uint8_t byte ) {
|
||||
// if ( addr >= 0xD000 ) {
|
||||
// // ROM
|
||||
// return;
|
||||
// }
|
||||
// if ( addr >= 0xC000 ) {
|
||||
// return mmioWrite(addr);
|
||||
// }
|
||||
//
|
||||
|
||||
RAM[ addr ] = byte;
|
||||
INLINE void memwrite8_low( uint16_t addr, uint8_t data ) {
|
||||
WRLOMEM[addr] = data;
|
||||
}
|
||||
INLINE void memwrite8_high( uint16_t addr, uint8_t data ) {
|
||||
WRHIMEM[addr] = data;
|
||||
}
|
||||
INLINE void memwrite( uint16_t addr, uint8_t data ) {
|
||||
if (addr >= 0xC000) {
|
||||
if (addr < 0xC100) {
|
||||
ioWrite(addr, data);
|
||||
}
|
||||
else {
|
||||
memwrite8_high(addr, data);
|
||||
}
|
||||
}
|
||||
else {
|
||||
memwrite8_low(addr, data);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Fetching 1 byte from memory address pc (program counter)
|
||||
|
@ -949,8 +919,7 @@ INLINE uint8_t src_abs() {
|
|||
return memread( addr_abs() );
|
||||
}
|
||||
INLINE uint8_t * dest_abs() {
|
||||
uint16_t addr = addr_abs();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_abs();
|
||||
}
|
||||
|
||||
|
||||
|
@ -981,8 +950,7 @@ INLINE uint8_t src_abs_X() {
|
|||
return memread( addr_abs_X() );
|
||||
}
|
||||
INLINE uint8_t * dest_abs_X() {
|
||||
uint16_t addr = addr_abs_X();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_abs_X();
|
||||
}
|
||||
|
||||
|
||||
|
@ -999,8 +967,7 @@ INLINE uint8_t src_abs_Y() {
|
|||
return memread(addr_abs_Y());
|
||||
}
|
||||
INLINE uint8_t * dest_abs_Y() {
|
||||
uint16_t addr = addr_abs_Y();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_abs_Y();
|
||||
}
|
||||
|
||||
INLINE uint16_t imm() {
|
||||
|
@ -1022,8 +989,7 @@ INLINE uint8_t src_zp() {
|
|||
return memread8(addr_zp());
|
||||
}
|
||||
INLINE uint8_t * dest_zp() {
|
||||
uint16_t addr = addr_zp();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_zp();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1051,8 +1017,7 @@ INLINE uint8_t src_X_ind() {
|
|||
return memread( addr_X_ind() );
|
||||
}
|
||||
INLINE uint8_t * dest_X_ind() {
|
||||
uint16_t addr = addr_X_ind();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_X_ind();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1071,8 +1036,7 @@ INLINE uint8_t src_ind_Y() {
|
|||
return memread( addr_ind_Y() );
|
||||
}
|
||||
INLINE uint8_t * dest_ind_Y() {
|
||||
uint16_t addr = addr_ind_Y();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_ind_Y();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1088,8 +1052,7 @@ INLINE uint8_t src_zp_X() {
|
|||
return memread8(addr_zp_X());
|
||||
}
|
||||
INLINE uint8_t * dest_zp_X() {
|
||||
uint16_t addr = addr_zp_X();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_zp_X();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1105,8 +1068,7 @@ INLINE uint8_t src_zp_Y() {
|
|||
return memread8(addr_zp_Y());
|
||||
}
|
||||
INLINE uint8_t * dest_zp_Y() {
|
||||
uint16_t addr = addr_zp_Y();
|
||||
return ( RAM_PG_WR_TBL[addr >> 8] + (addr & 0xFF) );
|
||||
return WRLOMEM + addr_zp_Y();
|
||||
}
|
||||
|
||||
|
||||
|
|
200
ssasa
Normal file
200
ssasa
Normal file
|
@ -0,0 +1,200 @@
|
|||
DEBUG: 0 no LDA
|
||||
Line Cycle Disassembly A X Y P S
|
||||
DEBUG: 0 no LDA
|
||||
5 44223738 C65E: BD 8C C0 LDA $C08C,X 0xF3 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
6 44223742 C661: 10 FB BPL $C65E 0xF3 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
7 44223744 C663: 49 D5 EOR #$D5 0x26 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
8 44223746 C665: D0 F7 BNE $C65E 0x26 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
15 44223770 C65E: BD 8C C0 LDA $C08C,X 0xCE 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
16 44223774 C661: 10 FB BPL $C65E 0xCE 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
17 44223776 C663: 49 D5 EOR #$D5 0x1B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
18 44223778 C665: D0 F7 BNE $C65E 0x1B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
25 44223802 C65E: BD 8C C0 LDA $C08C,X 0xE5 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
26 44223806 C661: 10 FB BPL $C65E 0xE5 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
27 44223808 C663: 49 D5 EOR #$D5 0x30 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
28 44223810 C665: D0 F7 BNE $C65E 0x30 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
35 44223834 C65E: BD 8C C0 LDA $C08C,X 0xF4 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
36 44223838 C661: 10 FB BPL $C65E 0xF4 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
37 44223840 C663: 49 D5 EOR #$D5 0x21 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
38 44223842 C665: D0 F7 BNE $C65E 0x21 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
45 44223866 C65E: BD 8C C0 LDA $C08C,X 0xCD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
46 44223870 C661: 10 FB BPL $C65E 0xCD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
47 44223872 C663: 49 D5 EOR #$D5 0x18 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
48 44223874 C665: D0 F7 BNE $C65E 0x18 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
55 44223898 C65E: BD 8C C0 LDA $C08C,X 0xBE 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
56 44223902 C661: 10 FB BPL $C65E 0xBE 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
57 44223904 C663: 49 D5 EOR #$D5 0x6B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
58 44223906 C665: D0 F7 BNE $C65E 0x6B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
65 44223930 C65E: BD 8C C0 LDA $C08C,X 0xFF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
66 44223934 C661: 10 FB BPL $C65E 0xFF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
67 44223936 C663: 49 D5 EOR #$D5 0x2A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
68 44223938 C665: D0 F7 BNE $C65E 0x2A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
75 44223962 C65E: BD 8C C0 LDA $C08C,X 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
76 44223966 C661: 10 FB BPL $C65E 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
77 44223968 C663: 49 D5 EOR #$D5 0x32 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
78 44223970 C665: D0 F7 BNE $C65E 0x32 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
85 44223994 C65E: BD 8C C0 LDA $C08C,X 0xCD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
86 44223998 C661: 10 FB BPL $C65E 0xCD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
87 44224000 C663: 49 D5 EOR #$D5 0x18 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
88 44224002 C665: D0 F7 BNE $C65E 0x18 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
95 44224026 C65E: BD 8C C0 LDA $C08C,X 0xBA 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
96 44224030 C661: 10 FB BPL $C65E 0xBA 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
97 44224032 C663: 49 D5 EOR #$D5 0x6F 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
98 44224034 C665: D0 F7 BNE $C65E 0x6F 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
105 44224058 C65E: BD 8C C0 LDA $C08C,X 0xB2 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
106 44224062 C661: 10 FB BPL $C65E 0xB2 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
107 44224064 C663: 49 D5 EOR #$D5 0x67 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
108 44224066 C665: D0 F7 BNE $C65E 0x67 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
115 44224090 C65E: BD 8C C0 LDA $C08C,X 0xA7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
116 44224094 C661: 10 FB BPL $C65E 0xA7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
117 44224096 C663: 49 D5 EOR #$D5 0x72 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
118 44224098 C665: D0 F7 BNE $C65E 0x72 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
125 44224122 C65E: BD 8C C0 LDA $C08C,X 0xFC 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
126 44224126 C661: 10 FB BPL $C65E 0xFC 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
127 44224128 C663: 49 D5 EOR #$D5 0x29 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
128 44224130 C665: D0 F7 BNE $C65E 0x29 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
135 44224154 C65E: BD 8C C0 LDA $C08C,X 0xF2 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
136 44224158 C661: 10 FB BPL $C65E 0xF2 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
137 44224160 C663: 49 D5 EOR #$D5 0x27 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
138 44224162 C665: D0 F7 BNE $C65E 0x27 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
145 44224186 C65E: BD 8C C0 LDA $C08C,X 0xE9 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
146 44224190 C661: 10 FB BPL $C65E 0xE9 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
147 44224192 C663: 49 D5 EOR #$D5 0x3C 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
148 44224194 C665: D0 F7 BNE $C65E 0x3C 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
155 44224218 C65E: BD 8C C0 LDA $C08C,X 0xFF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
156 44224222 C661: 10 FB BPL $C65E 0xFF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
157 44224224 C663: 49 D5 EOR #$D5 0x2A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
158 44224226 C665: D0 F7 BNE $C65E 0x2A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
165 44224250 C65E: BD 8C C0 LDA $C08C,X 0xCF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
166 44224254 C661: 10 FB BPL $C65E 0xCF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
167 44224256 C663: 49 D5 EOR #$D5 0x1A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
168 44224258 C665: D0 F7 BNE $C65E 0x1A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
175 44224282 C65E: BD 8C C0 LDA $C08C,X 0xA7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
176 44224286 C661: 10 FB BPL $C65E 0xA7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
177 44224288 C663: 49 D5 EOR #$D5 0x72 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
178 44224290 C665: D0 F7 BNE $C65E 0x72 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
185 44224314 C65E: BD 8C C0 LDA $C08C,X 0xDF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
186 44224318 C661: 10 FB BPL $C65E 0xDF 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
187 44224320 C663: 49 D5 EOR #$D5 0x0A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
188 44224322 C665: D0 F7 BNE $C65E 0x0A 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
195 44224346 C65E: BD 8C C0 LDA $C08C,X 0x9E 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
196 44224350 C661: 10 FB BPL $C65E 0x9E 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
197 44224352 C663: 49 D5 EOR #$D5 0x4B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
198 44224354 C665: D0 F7 BNE $C65E 0x4B 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
205 44224378 C65E: BD 8C C0 LDA $C08C,X 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
206 44224382 C661: 10 FB BPL $C65E 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
207 44224384 C663: 49 D5 EOR #$D5 0x32 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
208 44224386 C665: D0 F7 BNE $C65E 0x32 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
215 44224410 C65E: BD 8C C0 LDA $C08C,X 0x9B 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
216 44224414 C661: 10 FB BPL $C65E 0x9B 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
217 44224416 C663: 49 D5 EOR #$D5 0x4E 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
218 44224418 C665: D0 F7 BNE $C65E 0x4E 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
225 44224442 C65E: BD 8C C0 LDA $C08C,X 0xBA 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
226 44224446 C661: 10 FB BPL $C65E 0xBA 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
227 44224448 C663: 49 D5 EOR #$D5 0x6F 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
228 44224450 C665: D0 F7 BNE $C65E 0x6F 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
235 44224474 C65E: BD 8C C0 LDA $C08C,X 0xFD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
236 44224478 C661: 10 FB BPL $C65E 0xFD 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
237 44224480 C663: 49 D5 EOR #$D5 0x28 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
238 44224482 C665: D0 F7 BNE $C65E 0x28 0x60 0x00 0x34 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
245 44224506 C65E: BD 8C C0 LDA $C08C,X 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
246 44224510 C661: 10 FB BPL $C65E 0xE7 0x60 0x00 0xB4 0xFE
|
||||
DEBUG: 0 no LDA
|
||||
247 44224512 C663: 49 D5 EOR #$D5 0x32 0x60 0x00 0x34 0xFE
|
Loading…
Reference in New Issue
Block a user