mirror of
https://github.com/datajerk/codebreaker.git
synced 2024-12-22 00:29:21 +00:00
init commit
This commit is contained in:
commit
150648fa49
156
README.md
Normal file
156
README.md
Normal file
@ -0,0 +1,156 @@
|
||||
### Introduction
|
||||
|
||||
*CODEBREAKER* is [*Mastermind*](http://en.wikipedia.org/wiki/Mastermind_%28board_game%29) implementation for the [*Apple-1*](http://en.wikipedia.org/wiki/Apple_I) computer.
|
||||
|
||||
*CODEBREAKER* has three levels of difficulty:
|
||||
|
||||
| Level | Slots | Colors | Attempts | Time(s) |
|
||||
|--------|-------|--------|----------|---------|
|
||||
| Novice | 4 | 6 | 10 | inf. |
|
||||
| Pro | 5 | 8 | 12 | inf. |
|
||||
| Master | 5 | 8 | 12 | 60 |
|
||||
|
||||
**What sets *CODEBREAKER* apart from all those *other* Apple-1 titles?**
|
||||
|
||||
* *A true random number generator!* Using cycle counting while waiting for keystrokes generates a very random number. No need for seeds and no cheating possible (unless you hack the code :-).
|
||||
* *A countdown timer!* Using the 960 KHz clock of the Apple-1, *CODEBREAKER* can countdown the *Master* level with sub-second accuracy. If you really want to stress yourself out, play as a *Master*. ***You've got 60 seconds or you fail!***
|
||||
|
||||
|
||||
### Tested Platforms
|
||||
|
||||
* OpenEmulator 1.0.2 (<https://code.google.com/p/openemulator/>)
|
||||
* M.E.S.S. v0.145 (Mar 8 2012) - Multi Emulator Super System (<http://www.mess.org/>)
|
||||
* Apple-1 Mimeo Clone 4+4 configuration (tested by Corey Cohen). *This is about as close to a real Apple-1 as you can get without a million US dollars.*
|
||||
|
||||
|
||||
### Download
|
||||
|
||||
```
|
||||
git clone https://github.com/datajerk/codebreaker.git
|
||||
```
|
||||
|
||||
*or*
|
||||
|
||||
Download <https://github.com/datajerk/codebreaker/archive/master.zip> and extract.
|
||||
|
||||
|
||||
### Upload and Run
|
||||
|
||||
If your Apple-1 has 8K of contiguous memory starting at location `$0000` then use `codebreaker.8k.mon` or `codebreaker.8k.wav`.
|
||||
|
||||
Load/run with `codebreaker.8k.mon`:
|
||||
|
||||
1. Hand type (brutal) or cut/paste `codebreaker.8k.mon` into the Apple-1 monitor and then type `280R`.
|
||||
|
||||
Load/run with `codebreaker.8k.wav`:
|
||||
|
||||
1. Load up `codebreaker.8k.wav` into your audio player.
|
||||
|
||||
2. Type:
|
||||
|
||||
```
|
||||
C100R
|
||||
280.1AFFR
|
||||
```
|
||||
|
||||
3. Press *play*.
|
||||
|
||||
4. To run, type:
|
||||
|
||||
```
|
||||
280R
|
||||
```
|
||||
|
||||
<br>
|
||||
|
||||
If your Apple-1 has 8K of memory split into 4K banks at memory locations `$0000` and `$E000` (classic Apple-1 configuration) then use `codebreaker.4+4k.mon` or `codebreaker.4+4k.wav`.
|
||||
|
||||
> `$E000-$EFFF` *must be writable.*
|
||||
|
||||
Load/run with `codebreaker.4+4k.mon`:
|
||||
|
||||
1. Hand type (brutal) or cut/paste `codebreaker.4+4k.mon` into the Apple-1 monitor and then type `280R`.
|
||||
|
||||
Load/run with `codebreaker.4+4k.wav`:
|
||||
|
||||
1. Load up `codebreaker.4+4k.wav` into your audio player.
|
||||
|
||||
2. Type:
|
||||
|
||||
```
|
||||
C100R
|
||||
280.BFFR E000.EFFFR
|
||||
```
|
||||
|
||||
3. Press *play*
|
||||
|
||||
4. To run type:
|
||||
|
||||
```
|
||||
280R
|
||||
```
|
||||
|
||||
|
||||
### CFFA Notes
|
||||
|
||||
`codebreaker.po` contains 3 binaries: `CODEBREAKER`, `CODEBREAKER.PT1`, `CODEBREAKER.PT2`.
|
||||
|
||||
Use `CODEBREAKER` with systems that have 8k of contiguous memory starting at `$0000`.
|
||||
|
||||
Use `CODEBREAKER.PT1` and `.PT2` for split 8k systems (`$0000-$0FFF`, `$E000-$EFFF`)--load `PT1` before `PT2`.
|
||||
|
||||
In either case type `280R` to start.
|
||||
|
||||
|
||||
### Build Notes
|
||||
|
||||
*CODEBREAKER* was written in C with a bit of assembly (keyboard input, timer, and 32-bit random number seed generator). (*CODEBREAKER* may be the *only* Apple-1 title written in C :-).
|
||||
|
||||
#### Prerequisites
|
||||
|
||||
* To compile, you will need to build cc65 (<http://cc65.github.io/cc65/>) with the `cc65-2.13.2-apple1.patch` (included).
|
||||
* c2t (<https://github.com/datajerk/c2t>) for creating `.mon` and `.wav` files to load via monitor (CLI) or cassette port.
|
||||
* AppleCommander (<http://applecommander.sourceforge.net/>) for creating a CFFA `.po` diskette image.
|
||||
|
||||
Contiguous 8K build:
|
||||
|
||||
```
|
||||
rm codebreaker *.o
|
||||
ca65 -D CODESEG=0 -t none --listing --list-bytes 100 -o getkey.o getkey.s
|
||||
ca65 -D CODESEG=0 -t none --listing --list-bytes 100 -o putchar.o putchar.s
|
||||
cl65 -D CODESEG=0 -T -O --static-locals -t apple1 -C apple1-8k.cfg -o codebreaker codebreaker.c getkey.o putchar.o
|
||||
|
||||
c2t -l codebreaker codebreaker.8k.mon
|
||||
c2t -1et -r 48000 codebreaker codebreaker.8k.wav
|
||||
```
|
||||
|
||||
Non-contiguous 4+4K build:
|
||||
|
||||
```
|
||||
rm code.1 code.2 *.o
|
||||
ca65 -D CODESEG=1 -t none --listing --list-bytes 100 -o getkey.o getkey.s
|
||||
ca65 -D CODESEG=1 -t none --listing --list-bytes 100 -o putchar.o putchar.s
|
||||
cl65 -D CODESEG=1 -T -O --static-locals -t apple1 -C apple1.cfg -o code.header codebreaker.c getkey.o putchar.o
|
||||
|
||||
c2t -l code.1,280 code.2,e000 codebreaker.4+4k.mon
|
||||
c2t -1et -r 48000 code.1,280 code.2,e000 codebreaker.4+4k.wav
|
||||
|
||||
```
|
||||
|
||||
CFFA `codebreaker.po` build:
|
||||
|
||||
```
|
||||
applecmd='java -jar /path/to/AppleCommander.jar'
|
||||
|
||||
rm codebreaker.po
|
||||
$applecmd -pro140 codebreaker.po codebreaker
|
||||
tail -c $(( $(stat -f "%z" codebreaker) - 4 )) codebreaker | $applecmd -p codebreaker.po codebreaker bin 0x0280 bin
|
||||
$applecmd -p codebreaker.po codebreaker.pt1 bin 0xe000 bin < code.2
|
||||
$applecmd -p codebreaker.po codebreaker.pt2 bin 0x0280 bin < code.1
|
||||
$applecmd -ll codebreaker.po
|
||||
```
|
||||
|
||||
|
||||
### Changelog
|
||||
|
||||
* Initial 1.0 release, May 13 2012
|
37
apple1-8k.cfg
Normal file
37
apple1-8k.cfg
Normal file
@ -0,0 +1,37 @@
|
||||
MEMORY {
|
||||
ZP: start = $0020, size = $00C0, define = yes;
|
||||
HEADER: start = $0000, size = $0004, file = %O;
|
||||
RAM: start = $0280, size = $1D80, file = %O;
|
||||
}
|
||||
SEGMENTS {
|
||||
EXEHDR: load = HEADER, type = ro;
|
||||
STARTUP: load = RAM, type = ro, define = yes;
|
||||
LOWCODE: load = RAM, type = ro, optional = yes;
|
||||
INIT: load = RAM, type = ro, define = yes, optional = yes;
|
||||
CODE: load = RAM, type = ro;
|
||||
RODATA: load = RAM, type = ro;
|
||||
DATA: load = RAM, type = rw;
|
||||
BSS: load = RAM, type = bss, define = yes;
|
||||
HEAP: load = RAM, type = bss, optional = yes;
|
||||
ZEROPAGE: load = ZP, type = zp;
|
||||
}
|
||||
FEATURES {
|
||||
CONDES: segment = INIT,
|
||||
type = constructor,
|
||||
label = __CONSTRUCTOR_TABLE__,
|
||||
count = __CONSTRUCTOR_COUNT__;
|
||||
CONDES: segment = RODATA,
|
||||
type = destructor,
|
||||
label = __DESTRUCTOR_TABLE__,
|
||||
count = __DESTRUCTOR_COUNT__;
|
||||
CONDES: type = interruptor,
|
||||
segment = RODATA,
|
||||
label = __INTERRUPTOR_TABLE__,
|
||||
count = __INTERRUPTOR_COUNT__;
|
||||
}
|
||||
SYMBOLS {
|
||||
__STACKSIZE__ = $800;
|
||||
}
|
||||
|
||||
|
||||
|
39
apple1.cfg
Normal file
39
apple1.cfg
Normal file
@ -0,0 +1,39 @@
|
||||
MEMORY {
|
||||
ZP: start = $0020, size = $00C0, define = yes;
|
||||
HEADER: start = $0000, size = $0004, file = %O;
|
||||
RAM1: start = $0280, size = $0D80, file = "code.1";
|
||||
RAM2: start = $E000, size = $1000, file = "code.2";
|
||||
}
|
||||
SEGMENTS {
|
||||
EXEHDR: load = HEADER, type = ro;
|
||||
STARTUP: load = RAM1, type = ro, define = yes;
|
||||
LOWCODE: load = RAM1, type = ro, optional = yes;
|
||||
INIT: load = RAM1, type = ro, define = yes, optional = yes;
|
||||
CODE1: load = RAM1, type = ro;
|
||||
CODE: load = RAM2, type = ro;
|
||||
RODATA: load = RAM1, type = ro;
|
||||
DATA: load = RAM1, type = rw;
|
||||
BSS: load = RAM1, type = bss, define = yes;
|
||||
HEAP: load = RAM1, type = bss, optional = yes;
|
||||
ZEROPAGE: load = ZP, type = zp;
|
||||
}
|
||||
FEATURES {
|
||||
CONDES: segment = INIT,
|
||||
type = constructor,
|
||||
label = __CONSTRUCTOR_TABLE__,
|
||||
count = __CONSTRUCTOR_COUNT__;
|
||||
CONDES: segment = RODATA,
|
||||
type = destructor,
|
||||
label = __DESTRUCTOR_TABLE__,
|
||||
count = __DESTRUCTOR_COUNT__;
|
||||
CONDES: type = interruptor,
|
||||
segment = RODATA,
|
||||
label = __INTERRUPTOR_TABLE__,
|
||||
count = __INTERRUPTOR_COUNT__;
|
||||
}
|
||||
SYMBOLS {
|
||||
__STACKSIZE__ = $800;
|
||||
}
|
||||
|
||||
|
||||
|
3276
cc65-2.13.2-apple1.patch
Normal file
3276
cc65-2.13.2-apple1.patch
Normal file
File diff suppressed because it is too large
Load Diff
195
codebreaker.4+4k.mon
Normal file
195
codebreaker.4+4k.mon
Normal file
@ -0,0 +1,195 @@
|
||||
0280: A2 FF 9A 20 8C 02 20 42 EB 4C 1A FF 20 9E 02 A9 00 85 20 A9 F0 85 21 58 20 C1 02 4C 2B EB A9 03
|
||||
02A0: 85 28 A9 0B 85 29 A9 00 A8 A2 00 F0 0A 91 28 C8 D0 FB E6 29 CA D0 F6 C0 63 F0 05 91 28 C8 D0 F7
|
||||
02C0: 60 A0 00 F0 07 A9 CE A2 02 4C DE 0A 60 00 A0 02 B9 9C 0A 99 08 0B 88 10 F7 A9 76 A2 0A 20 9C EF
|
||||
02E0: A0 00 B1 20 A8 B9 08 0B 20 AB 05 A9 00 8D 07 0B AD 07 0B 20 A4 EE AD 04 0B 0A 90 02 A2 01 20 A8
|
||||
0300: EB 20 7C EB B0 0B A9 2D 20 AB 05 EE 07 0B 4C F0 02 A0 00 B1 20 A8 B9 08 0B 20 AB 05 A9 0D 20 AB
|
||||
0320: 05 4C AF EB A9 19 8D 0B 0B CE 0B 0B AE 0B 0B F0 08 A9 0D 20 AB 05 4C 29 03 60 A9 08 8D 0C 0B A0
|
||||
0340: 05 20 69 EC 20 F3 EC A2 00 86 22 86 23 8A 20 E7 EC F0 43 CE 0C 0B AD 0C 0B 18 69 0D A8 A9 00 69
|
||||
0360: 0B AA 98 20 A6 EE A0 07 20 69 EC 20 F3 EC A2 00 A9 0A 20 85 ED A0 30 20 7A EC A0 00 20 E9 EE A0
|
||||
0380: 05 20 69 EC 20 F3 EC A2 00 A9 0A 20 0B ED A0 02 20 1C EF 4C 3F 03 A0 01 B1 20 F0 42 AD 0C 0B F0
|
||||
03A0: 1A CE 0C 0B AD 0C 0B 18 69 0D 85 28 A9 00 69 0B 85 29 A0 00 B1 20 91 28 4C 9C 03 A9 08 38 A0 01
|
||||
03C0: F1 20 8D 0C 0B AD 0C 0B C9 08 90 03 4C D1 EB AC 0C 0B B9 0D 0B 20 AB 05 EE 0C 0B 4C C5 03 AD 0C
|
||||
03E0: 0B C9 08 90 03 4C D1 EB AC 0C 0B B9 0D 0B 20 AB 05 EE 0C 0B 4C DE 03 AD C2 0A AE C3 0A 20 9C EF
|
||||
0400: A9 00 8D 75 05 AD 75 05 C9 4E F0 0F AD 75 05 C9 59 F0 08 A0 00 20 76 05 4C 05 04 AD 75 05 20 AB
|
||||
0420: 05 AD 75 05 C9 4E D0 01 60 20 24 03 AD 04 0B C9 05 D0 13 AD 06 0B D0 07 A9 7A A2 0A 4C 4A 04 A9
|
||||
0440: 7E A2 0A 4C 4A 04 A9 85 A2 0A 20 9C EF A9 8C A2 0A 20 9C EF AD 06 0B F0 03 4C F5 04 AD C4 0A AE
|
||||
0460: C5 0A 20 9C EF A2 00 AD 04 0B 20 07 EB 20 19 EB 20 F3 EC A9 00 20 90 EE A9 30 20 90 EE 20 3A 03
|
||||
0480: AD C6 0A AE C7 0A 20 9C EF A2 00 AD 03 0B 20 07 EB 20 19 EB 20 F3 EC A9 00 20 90 EE A9 30 20 90
|
||||
04A0: EE 20 3A 03 AD C8 0A AE C9 0A 20 9C EF A2 00 AD 05 0B 20 07 EB 20 19 EB 20 F3 EC A9 00 20 90 EE
|
||||
04C0: A9 30 20 90 EE 20 3A 03 AD CA 0A AE CB 0A 20 9C EF A2 00 AD 04 0B 20 07 EB 20 19 EB 20 F3 EC A9
|
||||
04E0: 00 20 90 EE A9 30 20 90 EE 20 3A 03 AD CC 0A AE CD 0A 4C FB 04 AD CE 0A AE CF 0A 20 9C EF AD D0
|
||||
0500: 0A AE D1 0A 20 9C EF A0 00 4C 76 05 AD DD 0A 85 23 AD DC 0A 85 22 AE DB 0A AD DA 0A 20 F3 EC A2
|
||||
0520: 4E A9 C6 85 22 A9 41 85 23 A9 6D 20 91 EC 20 F3 EC A2 30 A9 00 A9 39 20 D6 EB 8D DA 0A 8E DB 0A
|
||||
0540: A4 22 8C DC 0A A4 23 8C DD 0A AD DD 0A 85 23 AD DC 0A 85 22 A0 00 A6 23 A5 22 84 23 84 22 20 19
|
||||
0560: EB 20 F3 EC A2 7F A9 00 85 22 85 23 A9 FF 4C 01 EC 00 00 00 00 00 AD 11 D0 30 27 18 A9 01 6D 71
|
||||
0580: 05 8D 71 05 A9 00 2A 6D 72 05 8D 72 05 A9 00 2A 6D 73 05 8D 73 05 A9 00 2A 6D 74 05 8D 74 05 18
|
||||
05A0: 90 D4 AD 10 D0 29 7F 8D 75 05 60 4C EF FF 43 4F 44 45 42 52 45 41 4B 45 52 21 0D 0D 22 43 52 41
|
||||
05C0: 43 4B 45 44 22 20 42 59 20 45 47 41 4E 20 46 4F 52 44 0D 0D 0D 0D 00 57 4F 55 4C 44 20 59 4F 55
|
||||
05E0: 20 4C 49 4B 45 20 54 4F 20 50 4C 41 59 20 41 53 20 41 0D 0D 5B 4E 5D 4F 56 49 43 45 2C 20 5B 50
|
||||
0600: 5D 52 4F 2C 20 4F 52 20 5B 4D 5D 41 53 54 45 52 3F 20 00 44 4F 20 59 4F 55 20 4E 45 45 44 20 49
|
||||
0620: 4E 53 54 52 55 43 54 49 4F 4E 53 3F 20 00 0A 47 4F 41 4C 3A 20 20 43 52 41 43 4B 20 54 48 45 20
|
||||
0640: 43 4F 44 45 2E 20 20 46 41 49 4C 55 52 45 20 49 53 20 4E 4F 54 0D 0A 20 20 20 20 20 20 20 41 4E
|
||||
0660: 20 4F 50 54 49 4F 4E 21 0D 0A 0D 0A 43 4F 44 45 3A 20 20 54 48 45 20 43 4F 44 45 20 49 53 20 43
|
||||
0680: 4F 4D 50 4F 53 45 44 20 4F 46 20 00 20 43 4F 4C 4F 52 53 0D 0A 20 20 20 20 20 20 20 4F 55 54 20
|
||||
06A0: 4F 46 20 41 20 53 45 54 20 4F 46 20 00 2E 20 20 44 55 50 4C 49 43 41 54 45 53 0D 0A 20 20 20 20
|
||||
06C0: 20 20 20 41 4C 4C 4F 57 45 44 2E 0D 0A 0D 0A 52 55 4C 45 53 3A 20 59 4F 55 20 48 41 56 45 20 00
|
||||
06E0: 20 41 54 54 45 4D 50 54 53 2E 20 20 41 46 54 45 52 20 45 41 43 48 0A 20 20 20 20 20 20 20 41 54
|
||||
0700: 54 45 4D 50 54 20 41 20 43 4C 55 45 20 57 49 4C 4C 20 42 45 20 47 49 56 45 4E 2E 0D 0A 0D 0A 43
|
||||
0720: 4C 55 45 53 3A 20 41 4E 20 2A 20 49 4E 44 49 43 41 54 45 53 20 54 48 41 54 20 59 4F 55 20 48 41
|
||||
0740: 56 45 20 41 0D 0A 20 20 20 20 20 20 20 43 4F 52 52 45 43 54 20 43 4F 4C 4F 52 20 49 4E 20 54 48
|
||||
0760: 45 20 43 4F 52 52 45 43 54 0D 0A 20 20 20 20 20 20 20 50 4C 41 43 45 2E 20 20 41 20 2B 20 49 4E
|
||||
0780: 44 49 43 41 54 45 53 20 54 48 41 54 20 59 4F 55 0D 0A 20 20 20 20 20 20 20 48 41 56 45 20 41 20
|
||||
07A0: 43 4F 52 52 45 43 54 20 43 4F 4C 4F 52 2E 20 20 59 4F 55 0D 0A 20 20 20 20 20 20 20 4E 45 45 44
|
||||
07C0: 20 00 20 2A 27 53 20 54 4F 20 57 49 4E 2E 20 20 54 48 45 0D 0A 20 20 20 20 20 20 20 50 4F 53 49
|
||||
07E0: 54 49 4F 4E 20 4F 46 20 54 48 45 20 43 4C 55 45 53 20 49 53 20 4E 4F 54 0D 0A 20 20 20 20 20 20
|
||||
0800: 20 52 45 4C 45 56 41 4E 54 2E 0D 0A 0D 0A 53 43 4F 52 45 3A 20 54 49 4D 45 20 49 4E 20 53 45 43
|
||||
0820: 4F 4E 44 53 2E 20 20 47 4F 4F 44 20 4C 55 43 4B 21 0D 0A 0D 0A 0D 0A 00 0D 41 20 50 52 4F 20 47
|
||||
0840: 41 4D 45 20 57 49 54 48 20 41 20 54 57 49 53 54 2E 2E 2E 0D 0D 0D 0D 20 20 20 20 20 20 20 59 4F
|
||||
0860: 55 20 4F 4E 4C 59 20 48 41 56 45 20 36 30 20 53 45 43 4F 4E 44 53 21 0D 0D 0D 0D 00 50 52 45 53
|
||||
0880: 53 20 41 4E 59 20 4B 45 59 20 54 4F 20 42 45 47 49 4E 20 43 52 41 43 4B 49 4E 47 20 00 0A 20 20
|
||||
08A0: 20 20 20 20 20 20 20 20 20 20 20 20 43 4F 44 45 42 52 45 41 4B 45 52 21 0D 0A 0D 0A 00 20 20 20
|
||||
08C0: 20 20 59 4F 55 27 56 45 20 43 52 41 43 4B 45 44 20 49 54 21 0D 00 20 20 20 20 20 20 20 59 4F 55
|
||||
08E0: 27 56 45 20 46 41 49 4C 45 44 0D 00 57 4F 55 4C 44 20 59 4F 55 20 4C 49 4B 45 20 54 4F 20 50 4C
|
||||
0900: 41 59 20 41 47 41 49 4E 3F 20 00 20 5B 52 5D 45 44 20 20 20 20 00 20 5B 47 5D 52 45 45 4E 20 20
|
||||
0920: 00 20 5B 42 5D 4C 55 45 20 20 20 00 20 5B 59 5D 45 4C 4C 4F 57 20 00 20 5B 4F 5D 52 41 4E 47 45
|
||||
0940: 20 00 20 5B 50 5D 55 52 50 4C 45 20 00 20 5B 53 5D 49 4C 56 45 52 20 00 20 5B 43 5D 4F 50 50 45
|
||||
0960: 52 20 00 4E 4F 56 49 43 45 00 50 52 4F 20 20 20 00 4D 41 53 54 45 52 00 0D 0D 00 0D 00 20 20 20
|
||||
0980: 20 20 00 0D 20 20 20 20 20 00 0D 0D 00 20 20 20 21 20 00 21 20 43 4C 55 45 00 53 00 20 20 54 49
|
||||
09A0: 4D 45 3A 20 2D 36 30 2E 30 00 0D 00 20 21 20 00 2D 20 00 21 20 00 20 20 54 49 4D 45 3A 20 2D 00
|
||||
09C0: 20 20 00 20 20 54 49 4D 45 3A 20 00 20 20 20 21 20 00 20 00 53 54 41 54 53 0D 0D 00 20 20 20 20
|
||||
09E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2D 2D 2D 2D 2D 54 49 4D 45 53 2D
|
||||
0A00: 2D 2D 2D 2D 00 47 41 4D 45 20 20 20 20 43 52 41 43 4B 45 44 20 20 46 41 49 4C 45 44 20 20 41 56
|
||||
0A20: 45 52 41 47 45 20 20 20 20 42 45 53 54 0D 00 20 20 20 20 20 00 20 20 20 20 00 20 20 20 20 00 2D
|
||||
0A40: 2D 2D 2D 2D 20 20 20 2D 2D 2D 2D 2D 00 20 20 20 00 20 20 20 20 00 0D 0D 0D 0D 54 4F 20 50 4C 41
|
||||
0A60: 59 20 41 47 41 49 4E 20 54 59 50 45 3A 20 20 32 38 30 52 0D 0D 00 20 20 20 00 50 52 4F 00 4D 41
|
||||
0A80: 53 54 45 52 00 4E 4F 56 49 43 45 00 20 49 4E 53 54 52 55 43 54 49 4F 4E 53 0D 0D 00 2E 3A 27 52
|
||||
0AA0: 47 42 59 4F 50 53 43 0B 09 16 09 21 09 2C 09 37 09 42 09 4D 09 58 09 63 09 6A 09 71 09 00 AE 05
|
||||
0AC0: D7 05 13 06 2E 06 8C 06 AD 06 E0 06 C2 07 38 08 7C 08 9D 08 BD 08 D6 08 EC 08 01 00 00 00 8D EC
|
||||
0AE0: 0A 8E ED 0A 8D F3 0A 8E F4 0A 88 B9 FF FF 8D FD 0A 88 B9 FF FF 8D FC 0A 8C FF 0A 20 FF FF A0 FF
|
||||
0B00: D0 E8 60
|
||||
E000: A0 07 B9 9F 0A 99 24 0B 88 10 F7 A0 0F B9 A7 0A 99 2C 0B 88 10 F7 A0 05 B9 B7 0A 99 3C 0B 88 10
|
||||
E020: F7 A9 00 8D 42 0B AD 42 0B C9 03 B0 6A A2 00 AD 42 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20
|
||||
E040: A6 EE A2 00 AD 42 0B 0A 90 02 E8 18 69 50 A8 8A 69 0B AA 98 20 A6 EE A2 00 AD 42 0B 0A 90 02 E8
|
||||
E060: 18 69 56 A8 8A 69 0B AA 98 20 A6 EE A2 00 AD 42 0B 0A 90 02 E8 18 69 5C A8 8A 69 0B AA 98 20 A6
|
||||
E080: EE A2 00 8A A8 20 FF EE 20 FF EE 20 FF EE 20 FF EE EE 42 0B 4C 26 E0 A0 00 20 24 03 AD BE 0A AE
|
||||
E0A0: BF 0A 20 9C EF A9 00 8D 06 0B A9 08 8D 03 0B A9 05 8D 04 0B A9 0C 8D 05 0B A9 01 8D 47 0B AD C0
|
||||
E0C0: 0A AE C1 0A 20 9C EF A9 00 8D 75 05 AD 75 05 C9 4E F0 16 AD 75 05 C9 50 F0 0F AD 75 05 C9 4D F0
|
||||
E0E0: 08 A0 00 20 76 05 4C CC E0 AD 75 05 20 AB 05 A9 78 A2 09 20 9C EF AD 75 05 C9 4E D0 14 A9 06 8D
|
||||
E100: 03 0B A9 04 8D 04 0B A9 0A 8D 05 0B A9 00 8D 47 0B AD 75 05 C9 4D D0 0A A9 01 8D 06 0B A9 02 8D
|
||||
E120: 47 0B A0 00 20 F7 03 A0 00 20 24 03 A2 02 A9 58 8D 48 0B 8E 49 0B AD 74 05 85 23 AD 73 05 85 22
|
||||
E140: AE 72 05 AD 71 05 20 F3 EC A2 FF 8A 20 FB EB 8D DA 0A 8E DB 0A A4 22 8C DC 0A A4 23 8C DD 0A A9
|
||||
E160: 00 8D 42 0B AD 42 0B CD 04 0B B0 27 A9 15 A2 0B 18 6D 42 0B 90 01 E8 20 A6 EE A0 00 20 0C 05 20
|
||||
E180: A6 EE AD 03 0B 20 7E EF A0 00 20 E9 EE EE 42 0B 4C 64 E1 A0 00 20 24 03 AD D2 0A AE D3 0A 20 9C
|
||||
E1A0: EF AD 04 0B C9 05 D0 32 A9 00 8D 42 0B A2 00 AD 42 0B CD 03 0B B0 1C AD 42 0B 0A 90 02 E8 18 69
|
||||
E1C0: 2C A8 8A 69 0B AA 98 20 5A EC 20 9C EF EE 42 0B 4C AD E1 A9 7B A2 09 4C 4B E2 A9 7D A2 09 20 9C
|
||||
E1E0: EF A9 00 8D 42 0B AD 42 0B 20 A4 EE AD 03 0B 4A 20 7A EB B0 1E A2 00 AD 42 0B 0A 90 02 E8 18 69
|
||||
E200: 2C A8 8A 69 0B AA 98 20 5A EC 20 9C EF EE 42 0B 4C E6 E1 A9 83 A2 09 20 9C EF AD 03 0B 4A 8D 42
|
||||
E220: 0B A2 00 AD 42 0B CD 03 0B B0 1C AD 42 0B 0A 90 02 E8 18 69 2C A8 8A 69 0B AA 98 20 5A EC 20 9C
|
||||
E240: EF EE 42 0B 4C 21 E2 A9 8A A2 09 20 9C EF A9 00 20 90 EE 20 CE 02 A9 8D A2 09 20 9C EF A9 00 8D
|
||||
E260: 42 0B CD 04 0B B0 13 A9 58 20 AB 05 A9 20 20 AB 05 AD 42 0B 18 69 01 4C 5F E2 A9 93 A2 09 20 9C
|
||||
E280: EF AD 04 0B C9 05 D0 07 A9 9A A2 09 20 9C EF AD 06 0B F0 07 A9 9C A2 09 20 9C EF A9 AA A2 09 20
|
||||
E2A0: 9C EF A9 01 20 90 EE 20 CE 02 A9 01 8D 42 0B AD 42 0B 38 ED 05 0B 85 30 90 05 F0 03 4C F6 E5 A9
|
||||
E2C0: 00 8D 43 0B AD 43 0B 20 A4 EE AD 04 0B 20 7A EB B0 0E AC 43 0B A9 00 99 1A 0B EE 43 0B 4C C4 E2
|
||||
E2E0: A9 00 8D 46 0B 8D 45 0B AA AD 42 0B 20 07 EB 20 19 EB 20 F3 EC A9 02 20 90 EE A9 20 20 90 EE 20
|
||||
E300: 3A 03 A9 AC A2 09 20 9C EF AD 42 0B C9 01 D0 0E A9 00 8D 71 05 8D 72 05 8D 73 05 8D 74 05 A9 00
|
||||
E320: 8D 43 0B AD 43 0B CD 04 0B 90 03 4C FD E3 A0 00 20 76 05 AD 06 0B F0 5C AD 74 05 85 23 AD 73 05
|
||||
E340: 85 22 AE 72 05 AD 71 05 20 F3 EC A2 00 A9 3B 20 8B EC 20 F3 EC A2 76 A9 01 85 22 A9 00 85 23 A9
|
||||
E360: EB 20 11 ED 49 FF 38 6D 48 0B 8D 48 0B 8A 49 FF 6D 49 0B 8D 49 0B A9 00 8D 71 05 8D 72 05 8D 73
|
||||
E380: 05 8D 74 05 AE 49 0B E0 80 90 09 8D 48 0B 8D 49 0B 4C FD E3 8D 44 0B AD 44 0B CD 03 0B B0 11 AC
|
||||
E3A0: 44 0B B9 24 0B CD 75 05 F0 06 EE 44 0B 4C 97 E3 AD 03 0B CD 44 0B D0 0C AD 43 0B 38 E9 01 8D 43
|
||||
E3C0: 0B 4C F7 E3 AC 44 0B B9 24 0B 20 AB 05 A9 20 20 AB 05 AC 43 0B B9 15 0B CD 44 0B D0 11 AD 45 0B
|
||||
E3E0: 18 69 01 8D 45 0B AC 43 0B A9 01 99 1A 0B AC 43 0B AD 44 0B 99 1F 0B EE 43 0B 4C 23 E3 AD 43 0B
|
||||
E400: CD 04 0B B0 15 A9 B0 A2 09 20 9C EF AC 43 0B A9 09 99 1F 0B EE 43 0B 4C FD E3 A9 B3 A2 09 20 9C
|
||||
E420: EF A9 00 8D 43 0B A2 00 AD 43 0B CD 04 0B B0 64 AC 43 0B B9 1F 0B 85 28 86 29 AC 43 0B B9 15 0B
|
||||
E440: E4 29 D0 04 C5 28 F0 46 8E 44 0B AD 44 0B CD 04 0B 8A E9 00 B0 38 AC 43 0B B9 1F 0B 85 28 AC 44
|
||||
E460: 0B B9 15 0B E4 29 D0 20 C5 28 D0 1C AC 44 0B B9 1A 0B D0 14 AD 46 0B 18 69 01 8D 46 0B AC 44 0B
|
||||
E480: A9 01 99 1A 0B 4C 8E E4 EE 44 0B 4C 4B E4 EE 43 0B 4C 26 E4 8E 43 0B AD 43 0B CD 45 0B B0 0B A9
|
||||
E4A0: 2A 20 AB 05 EE 43 0B 4C 97 E4 A9 00 8D 43 0B AD 43 0B 20 A4 EE AD 04 0B 38 ED 45 0B 38 ED 46 0B
|
||||
E4C0: 20 7A EB B0 0B A9 20 20 AB 05 EE 43 0B 4C AF E4 A9 00 8D 43 0B AD 43 0B CD 46 0B B0 0B A9 2B 20
|
||||
E4E0: AB 05 EE 43 0B 4C D5 E4 AD 06 0B F0 48 A9 B6 A2 09 20 9C EF AD 48 0B AE 49 0B 20 A6 EE A9 0A 20
|
||||
E500: 62 EB 20 20 EB 20 F3 EC A9 02 20 90 EE A9 30 20 90 EE 20 3A 03 A9 2E 20 AB 05 AD 48 0B AE 49 0B
|
||||
E520: 20 A6 EE A2 00 A9 0A 20 CF ED 20 20 EB 20 F3 EC A9 01 4C D0 E5 AD 04 0B C9 04 D0 07 A9 C0 A2 09
|
||||
E540: 20 9C EF A9 C3 A2 09 20 9C EF AD 74 05 85 23 AD 73 05 85 22 AE 72 05 AD 71 05 20 F3 EC A2 00 A9
|
||||
E560: 3B 20 8B EC 20 F3 EC A2 A5 A9 0E 85 22 A9 00 85 23 A9 2E 20 11 ED 20 F3 EC A2 00 A9 3C 20 0B ED
|
||||
E580: 20 F3 EC A9 02 20 90 EE A9 30 20 90 EE 20 3A 03 A9 3A 20 AB 05 AD 74 05 85 23 AD 73 05 85 22 AE
|
||||
E5A0: 72 05 AD 71 05 20 F3 EC A2 00 A9 3B 20 8B EC 20 F3 EC A2 A5 A9 0E 85 22 A9 00 85 23 A9 2E 20 11
|
||||
E5C0: ED 20 F3 EC A2 00 A9 3C 20 85 ED 20 F3 EC A9 02 20 90 EE A9 30 20 90 EE 20 3A 03 A9 0D 20 AB 05
|
||||
E5E0: AD 04 0B CD 45 0B F0 0E AD 48 0B 0D 49 0B F0 06 EE 42 0B 4C AF E2 A9 01 20 90 EE 20 CE 02 A9 CC
|
||||
E600: A2 09 20 9C EF A9 00 8D 42 0B CD 04 0B B0 24 AC 42 0B B9 15 0B 85 28 A9 00 18 69 0B 85 29 A0 24
|
||||
E620: B1 28 20 AB 05 A9 20 20 AB 05 AD 42 0B 18 69 01 4C 07 E6 A9 21 20 AB 05 AD 04 0B C9 04 D0 07 A9
|
||||
E640: D2 A2 09 20 9C EF AD 04 0B CD 45 0B F0 03 4C CE E7 AD D4 0A AE D5 0A 20 9C EF AD 47 0B C9 02 D0
|
||||
E660: 12 A9 58 38 ED 48 0B 8D 48 0B A9 02 ED 49 0B AA 4C A2 E6 AD 74 05 85 23 AD 73 05 85 22 AE 72 05
|
||||
E680: AD 71 05 20 F3 EC A2 00 A9 3B 20 8B EC 20 F3 EC A2 A5 A9 0E 85 22 A9 00 85 23 A9 2E 20 11 ED 8D
|
||||
E6A0: 48 0B 8E 49 0B A2 00 AD 47 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 A6 EE 20 5A EC 20 A8 EB
|
||||
E6C0: A0 00 20 FF EE A2 00 AD 47 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 5A EC E0 00 D0 3A C9 01
|
||||
E6E0: D0 36 AD 47 0B 0A 90 02 E8 18 69 56 A8 8A 69 0B AA 98 20 A6 EE A2 00 AD 47 0B 0A 90 02 E8 18 69
|
||||
E700: 5C A8 8A 69 0B AA 98 20 A6 EE AD 48 0B AE 49 0B A0 00 20 FF EE 4C F4 E7 A2 00 AD 47 0B 0A 90 02
|
||||
E720: E8 18 69 56 A8 8A 69 0B AA 98 20 A6 EE A2 00 AD 47 0B 0A 90 02 E8 18 69 56 A8 8A 69 0B AA 98 20
|
||||
E740: BC EE A2 00 AD 47 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 5A EC 20 4E EB 20 E3 ED 18 6D 48
|
||||
E760: 0B 48 8A 6D 49 0B AA 68 20 A6 EE A2 00 AD 47 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 5A EC
|
||||
E780: 20 31 EF A0 00 20 FF EE AD 48 0B AE 49 0B 20 A6 EE A2 00 AD 47 0B 0A 90 02 E8 18 69 5C A8 8A 69
|
||||
E7A0: 0B AA 98 20 5A EC 20 7C EB B0 4C A2 00 AD 47 0B 0A 90 02 E8 18 69 5C 85 28 8A 69 0B 85 29 AD 48
|
||||
E7C0: 0B A0 00 91 28 C8 AD 49 0B 91 28 4C F7 E7 AD D6 0A AE D7 0A 20 9C EF A2 00 AD 47 0B 0A 90 02 E8
|
||||
E7E0: 18 69 50 A8 8A 69 0B AA 98 20 A6 EE 20 5A EC 20 A8 EB A0 00 20 FF EE A9 02 20 90 EE 20 CE 02 A9
|
||||
E800: 0D 20 AB 05 AD D8 0A AE D9 0A 20 9C EF A9 00 8D 75 05 AD 75 05 C9 4E F0 0F AD 75 05 C9 59 F0 08
|
||||
E820: A0 00 20 76 05 4C 12 E8 AD 75 05 20 AB 05 A0 00 20 24 03 AD 75 05 C9 59 D0 03 4C A5 E0 A9 D4 A2
|
||||
E840: 09 20 9C EF A9 DC A2 09 20 9C EF A9 05 A2 0A 20 9C EF A9 00 8D 42 0B AD 42 0B C9 03 90 03 4C DE
|
||||
E860: EA A2 00 AD 42 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 5A EC 85 22 86 23 A2 00 AD 42 0B 0A
|
||||
E880: 90 02 E8 18 69 50 A8 8A 69 0B AA 98 20 5A EC 18 65 22 48 8A 65 23 AA 68 E0 00 D0 07 C9 00 D0 03
|
||||
E8A0: 4C D8 EA A2 00 AD 42 0B 0A 90 02 E8 18 69 3C A8 8A 69 0B AA 98 20 5A EC 20 9C EF A9 2F A2 0A 20
|
||||
E8C0: 9C EF A2 00 AD 42 0B 0A 90 02 E8 18 69 4A A8 8A 69 0B AA 98 20 5A EC 20 19 EB 20 F3 EC A9 04 20
|
||||
E8E0: 90 EE A9 20 20 90 EE 20 3A 03 A9 35 A2 0A 20 9C EF A2 00 AD 42 0B 0A 90 02 E8 18 69 50 A8 8A 69
|
||||
E900: 0B AA 98 20 5A EC 20 19 EB 20 F3 EC A9 04 20 90 EE A9 20 20 90 EE 20 3A 03 A9 3A A2 0A 20 9C EF
|
||||
E920: A2 00 AD 42 0B 0A 90 02 E8 18 69 56 A8 8A 69 0B AA 98 20 5A EC E0 00 D0 0E C9 00 D0 0A A9 3F A2
|
||||
E940: 0A 20 9C EF 4C D8 EA AD 42 0B C9 02 90 03 4C 0E EA A2 00 AD 42 0B 0A 90 02 E8 18 69 56 A8 8A 69
|
||||
E960: 0B AA 98 20 BC EE A9 3C 20 2F EF 20 19 EB 20 F3 EC A9 02 20 90 EE A9 30 20 90 EE 20 3A 03 A9 3A
|
||||
E980: 20 AB 05 A2 00 AD 42 0B 0A 90 02 E8 18 69 56 A8 8A 69 0B AA 98 20 BC EE A9 3C 20 7E EF 20 19 EB
|
||||
E9A0: 20 F3 EC A9 02 20 90 EE A9 30 20 90 EE 20 3A 03 A9 4D A2 0A 20 9C EF A2 00 AD 42 0B 0A 90 02 E8
|
||||
E9C0: 18 69 5C A8 8A 69 0B AA 98 20 BC EE A9 3C 20 2F EF 20 19 EB 20 F3 EC A9 02 20 90 EE A9 30 20 90
|
||||
E9E0: EE 20 3A 03 A9 3A 20 AB 05 A2 00 AD 42 0B 0A 90 02 E8 18 69 5C A8 8A 69 0B AA 98 20 BC EE A9 3C
|
||||
EA00: 20 7E EF 20 19 EB 20 F3 EC A9 02 4C CD EA A9 20 20 AB 05 A2 00 AD 42 0B 0A 90 02 E8 18 69 56 A8
|
||||
EA20: 8A 69 0B AA 98 20 BC EE A9 0A 20 2F EF 20 19 EB 20 F3 EC A9 02 20 90 EE A9 20 20 90 EE 20 3A 03
|
||||
EA40: A9 2E 20 AB 05 A2 00 AD 42 0B 0A 90 02 E8 18 69 56 A8 8A 69 0B AA 98 20 BC EE A9 0A 20 7E EF 20
|
||||
EA60: 19 EB 20 F3 EC A9 01 20 90 EE A9 30 20 90 EE 20 3A 03 A9 51 A2 0A 20 9C EF A2 00 AD 42 0B 0A 90
|
||||
EA80: 02 E8 18 69 5C A8 8A 69 0B AA 98 20 BC EE A9 0A 20 2F EF 20 19 EB 20 F3 EC A9 02 20 90 EE A9 20
|
||||
EAA0: 20 90 EE 20 3A 03 A9 2E 20 AB 05 A2 00 AD 42 0B 0A 90 02 E8 18 69 5C A8 8A 69 0B AA 98 20 BC EE
|
||||
EAC0: A9 0A 20 7E EF 20 19 EB 20 F3 EC A9 01 20 90 EE A9 30 20 90 EE 20 3A 03 EE 42 0B 4C 57 E8 A9 56
|
||||
EAE0: A2 0A 20 9C EF A2 00 8A 60 48 20 70 EE 20 F4 EA 68 4C EF FF 18 20 70 EE 60 C8 48 18 98 65 20 85
|
||||
EB00: 20 90 02 E6 21 68 60 A2 00 86 22 86 23 60 C9 80 90 F5 A2 FF 86 22 86 23 60 A0 00 84 22 84 23 60
|
||||
EB20: E0 80 90 F5 A0 FF 84 22 84 23 60 AD 62 0B AE 63 0B 20 A6 EE AD 64 0B AE 65 0B 20 A6 EE A0 04 4C
|
||||
EB40: 00 E0 A0 00 F0 07 A9 BE A2 0A 4C DE 0A 60 38 E9 01 B0 01 CA 60 A5 20 38 E9 04 85 20 90 01 60 C6
|
||||
EB60: 21 60 A2 00 20 CB EE 20 40 EF A6 23 A5 30 45 31 10 05 A5 22 4C 62 EE A5 22 60 A2 00 85 22 86 23
|
||||
EB80: A0 00 B1 20 AA E6 20 D0 02 E6 21 B1 20 E6 20 D0 02 E6 21 38 E5 23 D0 09 E4 22 F0 04 69 FF 09 01
|
||||
EBA0: 60 50 FD 49 FF 09 01 60 18 69 01 90 01 E8 60 E6 20 D0 02 E6 21 60 A0 01 B1 20 AA 88 B1 20 E6 20
|
||||
EBC0: F0 05 E6 20 F0 03 60 E6 20 E6 21 60 A0 04 4C FA EA A0 06 4C FA EA A0 00 84 22 84 23 18 A0 00 71
|
||||
EBE0: 20 C8 85 30 8A 71 20 AA C8 A5 22 71 20 85 22 C8 A5 23 71 20 85 23 A5 30 4C F9 EA A0 00 84 22 84
|
||||
EC00: 23 A0 00 31 20 85 30 C8 8A 31 20 AA C8 A5 22 31 20 85 22 C8 A5 23 31 20 85 23 A5 30 4C F9 EA 85
|
||||
EC20: 28 86 29 A0 03 B1 20 38 E5 23 D0 22 88 B1 20 C5 22 D0 0C 88 B1 20 C5 29 D0 05 88 B1 20 C5 28 08
|
||||
EC40: 20 CC EB 28 F0 04 B0 03 A9 FF 60 A9 01 60 50 04 49 FF 09 01 08 20 CC EB 28 60 A0 01 85 28 86 29
|
||||
EC60: B1 28 AA 88 B1 28 60 A0 03 B1 20 85 23 88 B1 20 85 22 88 B1 20 AA 88 B1 20 60 84 2E 18 65 2E 90
|
||||
EC80: 09 E8 D0 06 E6 22 D0 02 E6 23 60 A0 00 84 22 84 23 85 28 86 29 A0 00 B1 20 85 2C C8 B1 20 85 2D
|
||||
ECA0: C8 B1 20 85 2E C8 B1 20 85 2F 20 F9 EA A9 00 85 33 85 32 85 31 A0 20 46 33 66 32 66 31 6A 66 23
|
||||
ECC0: 66 22 66 29 66 28 90 17 18 65 2C 48 A5 2D 65 31 85 31 A5 2E 65 32 85 32 A5 2F 65 33 85 33 68 88
|
||||
ECE0: 10 D5 A5 28 A6 29 60 20 1F EC 4C 9E ED A0 00 84 22 84 23 48 20 55 EB A0 03 A5 23 91 20 88 A5 22
|
||||
ED00: 91 20 88 8A 91 20 88 68 91 20 60 A0 00 84 22 84 23 20 1C ED 20 40 ED A5 28 A6 29 60 85 2C 86 2D
|
||||
ED20: A5 22 85 2E A5 23 85 2F A0 00 B1 20 85 28 C8 B1 20 85 29 C8 B1 20 85 22 C8 B1 20 85 23 4C F9 EA
|
||||
ED40: A9 00 85 2B 85 32 85 33 A0 20 06 28 26 29 26 22 26 23 2A 26 2B 26 32 26 33 48 C5 2C A5 2B E5 2D
|
||||
ED60: A5 32 E5 2E A5 33 E5 2F 90 14 85 33 68 E5 2C 48 A5 2B E5 2D 85 2B A5 32 E5 2E 85 32 E6 28 68 88
|
||||
ED80: D0 C8 85 2A 60 A0 00 84 22 84 23 20 1C ED 20 40 ED A5 32 85 22 A5 33 85 23 A5 2A A6 2B 60 D0 2A
|
||||
EDA0: A2 00 8A 60 F0 24 A2 00 8A 60 F0 1E 30 1C A2 00 8A 60 F0 02 10 14 A2 00 8A 60 F0 0E 90 0C A2 00
|
||||
EDC0: 8A 60 F0 02 B0 04 A2 00 8A 60 A2 00 A9 01 60 A2 00 20 CB EE 20 40 EF A5 28 A6 29 24 30 10 03 4C
|
||||
EDE0: 62 EE 60 85 2E 8A F0 2E 86 2F 20 7C EE A9 00 A6 23 F0 26 85 30 A0 10 46 2F 66 2E 90 0A 18 65 22
|
||||
EE00: 48 8A 65 30 85 30 68 66 30 6A 66 2F 66 2E 88 D0 EA A5 2E A6 2F 60 4C 2A EE A4 22 A6 2E 86 22 A6
|
||||
EE20: 2F 84 2E A0 08 4C 35 EE 85 2E 20 7C EE A9 00 A0 08 A6 23 F0 1C 85 2F 46 2E 90 0A 18 65 22 48 8A
|
||||
EE40: 65 2F 85 2F 68 66 2F 6A 66 2E 88 D0 EC AA A5 2E 60 46 2E 90 03 18 65 22 6A 66 2E 88 D0 F5 AA A5
|
||||
EE60: 2E 60 18 49 FF 69 01 48 8A 49 FF 69 00 AA 68 60 A0 00 B1 20 E6 20 F0 01 60 E6 21 60 48 A0 01 B1
|
||||
EE80: 20 85 23 88 B1 20 85 22 68 4C BE EB A0 00 B1 20 A4 20 F0 07 C6 20 A0 00 91 20 60 C6 21 C6 20 91
|
||||
EEA0: 20 60 A9 00 A2 00 48 A5 20 38 E9 02 85 20 B0 02 C6 21 A0 01 8A 91 20 68 88 91 20 60 A0 01 85 28
|
||||
EEC0: 86 29 B1 28 AA 88 B1 28 4C A6 EE 86 31 E0 00 10 03 20 62 EE 85 2E 86 2F 20 B6 EB 86 30 E0 00 10
|
||||
EEE0: 03 20 62 EE 85 22 86 23 60 48 84 30 A0 01 B1 20 85 29 88 B1 20 85 28 A4 30 68 91 28 4C BE EB 84
|
||||
EF00: 30 48 A0 01 B1 20 85 29 88 B1 20 85 28 A4 30 C8 8A 91 28 88 68 91 28 4C BE EB A0 00 91 20 C8 48
|
||||
EF20: 8A 91 20 C8 A5 22 91 20 C8 A5 23 91 20 68 60 A2 00 85 2E 86 2F 20 7C EE 20 40 EF A5 22 A6 23 60
|
||||
EF40: A9 00 85 29 A0 10 A6 23 F0 1F 06 22 26 23 2A 26 29 48 C5 2E A5 29 E5 2F 90 08 85 29 68 E5 2E 48
|
||||
EF60: E6 22 68 88 D0 E4 85 28 60 06 22 26 23 2A B0 04 C5 2E 90 04 E5 2E E6 22 88 D0 EE 85 28 60 A2 00
|
||||
EF80: 85 2E 86 2F 20 7C EE 20 40 EF A5 28 A6 29 60 85 28 86 29 20 70 EE 20 F4 EA 4C A0 EF 85 28 86 29
|
||||
EFA0: A0 00 B1 28 F0 0E C8 84 30 20 F1 EA A4 30 D0 F2 E6 29 D0 EE 60
|
BIN
codebreaker.4+4k.wav
Normal file
BIN
codebreaker.4+4k.wav
Normal file
Binary file not shown.
194
codebreaker.8k.mon
Normal file
194
codebreaker.8k.mon
Normal file
@ -0,0 +1,194 @@
|
||||
0280: A2 FF 9A 20 8C 02 20 F0 10 4C 1A FF 20 9E 02 A9 00 85 20 A9 F0 85 21 58 20 C1 02 4C D9 10 A9 B8
|
||||
02A0: 85 28 A9 1A 85 29 A9 00 A8 A2 00 F0 0A 91 28 C8 D0 FB E6 29 CA D0 F6 C0 63 F0 05 91 28 C8 D0 F7
|
||||
02C0: 60 A0 00 F0 07 A9 CE A2 02 4C 93 1A 60 00 A0 02 B9 51 1A 99 BD 1A 88 10 F7 A9 2B A2 1A 20 4A 15
|
||||
02E0: A0 00 B1 20 A8 B9 BD 1A 20 94 10 A9 00 8D BC 1A AD BC 1A 20 52 14 AD B9 1A 0A 90 02 A2 01 20 56
|
||||
0300: 11 20 2A 11 B0 0B A9 2D 20 94 10 EE BC 1A 4C F0 02 A0 00 B1 20 A8 B9 BD 1A 20 94 10 A9 0D 20 94
|
||||
0320: 10 4C 5D 11 A9 19 8D C0 1A CE C0 1A AE C0 1A F0 08 A9 0D 20 94 10 4C 29 03 60 A9 08 8D C1 1A A0
|
||||
0340: 05 20 17 12 20 A1 12 A2 00 86 22 86 23 8A 20 95 12 F0 43 CE C1 1A AD C1 1A 18 69 C2 A8 A9 00 69
|
||||
0360: 1A AA 98 20 54 14 A0 07 20 17 12 20 A1 12 A2 00 A9 0A 20 33 13 A0 30 20 28 12 A0 00 20 97 14 A0
|
||||
0380: 05 20 17 12 20 A1 12 A2 00 A9 0A 20 B9 12 A0 02 20 CA 14 4C 3F 03 A0 01 B1 20 F0 42 AD C1 1A F0
|
||||
03A0: 1A CE C1 1A AD C1 1A 18 69 C2 85 28 A9 00 69 1A 85 29 A0 00 B1 20 91 28 4C 9C 03 A9 08 38 A0 01
|
||||
03C0: F1 20 8D C1 1A AD C1 1A C9 08 90 03 4C 7F 11 AC C1 1A B9 C2 1A 20 94 10 EE C1 1A 4C C5 03 AD C1
|
||||
03E0: 1A C9 08 90 03 4C 7F 11 AC C1 1A B9 C2 1A 20 94 10 EE C1 1A 4C DE 03 AD 77 1A AE 78 1A 20 4A 15
|
||||
0400: A9 00 8D 5E 10 AD 5E 10 C9 4E F0 0F AD 5E 10 C9 59 F0 08 A0 00 20 5F 10 4C 05 04 AD 5E 10 20 94
|
||||
0420: 10 AD 5E 10 C9 4E D0 01 60 20 24 03 AD B9 1A C9 05 D0 13 AD BB 1A D0 07 A9 2F A2 1A 4C 4A 04 A9
|
||||
0440: 33 A2 1A 4C 4A 04 A9 3A A2 1A 20 4A 15 A9 41 A2 1A 20 4A 15 AD BB 1A F0 03 4C F5 04 AD 79 1A AE
|
||||
0460: 7A 1A 20 4A 15 A2 00 AD B9 1A 20 B5 10 20 C7 10 20 A1 12 A9 00 20 3E 14 A9 30 20 3E 14 20 3A 03
|
||||
0480: AD 7B 1A AE 7C 1A 20 4A 15 A2 00 AD B8 1A 20 B5 10 20 C7 10 20 A1 12 A9 00 20 3E 14 A9 30 20 3E
|
||||
04A0: 14 20 3A 03 AD 7D 1A AE 7E 1A 20 4A 15 A2 00 AD BA 1A 20 B5 10 20 C7 10 20 A1 12 A9 00 20 3E 14
|
||||
04C0: A9 30 20 3E 14 20 3A 03 AD 7F 1A AE 80 1A 20 4A 15 A2 00 AD B9 1A 20 B5 10 20 C7 10 20 A1 12 A9
|
||||
04E0: 00 20 3E 14 A9 30 20 3E 14 20 3A 03 AD 81 1A AE 82 1A 4C FB 04 AD 83 1A AE 84 1A 20 4A 15 AD 85
|
||||
0500: 1A AE 86 1A 20 4A 15 A0 00 4C 5F 10 AD 92 1A 85 23 AD 91 1A 85 22 AE 90 1A AD 8F 1A 20 A1 12 A2
|
||||
0520: 4E A9 C6 85 22 A9 41 85 23 A9 6D 20 3F 12 20 A1 12 A2 30 A9 00 A9 39 20 84 11 8D 8F 1A 8E 90 1A
|
||||
0540: A4 22 8C 91 1A A4 23 8C 92 1A AD 92 1A 85 23 AD 91 1A 85 22 A0 00 A6 23 A5 22 84 23 84 22 20 C7
|
||||
0560: 10 20 A1 12 A2 7F A9 00 85 22 85 23 A9 FF 4C AF 11 A0 07 B9 54 1A 99 D9 1A 88 10 F7 A0 0F B9 5C
|
||||
0580: 1A 99 E1 1A 88 10 F7 A0 05 B9 6C 1A 99 F1 1A 88 10 F7 A9 00 8D F7 1A AD F7 1A C9 03 B0 6A A2 00
|
||||
05A0: AD F7 1A 0A 90 02 E8 18 69 FF A8 8A 69 1A AA 98 20 54 14 A2 00 AD F7 1A 0A 90 02 E8 18 69 05 A8
|
||||
05C0: 8A 69 1B AA 98 20 54 14 A2 00 AD F7 1A 0A 90 02 E8 18 69 0B A8 8A 69 1B AA 98 20 54 14 A2 00 AD
|
||||
05E0: F7 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 54 14 A2 00 8A A8 20 AD 14 20 AD 14 20 AD 14 20
|
||||
0600: AD 14 EE F7 1A 4C 97 05 A0 00 20 24 03 AD 73 1A AE 74 1A 20 4A 15 A9 00 8D BB 1A A9 08 8D B8 1A
|
||||
0620: A9 05 8D B9 1A A9 0C 8D BA 1A A9 01 8D FC 1A AD 75 1A AE 76 1A 20 4A 15 A9 00 8D 5E 10 AD 5E 10
|
||||
0640: C9 4E F0 16 AD 5E 10 C9 50 F0 0F AD 5E 10 C9 4D F0 08 A0 00 20 5F 10 4C 3D 06 AD 5E 10 20 94 10
|
||||
0660: A9 2D A2 19 20 4A 15 AD 5E 10 C9 4E D0 14 A9 06 8D B8 1A A9 04 8D B9 1A A9 0A 8D BA 1A A9 00 8D
|
||||
0680: FC 1A AD 5E 10 C9 4D D0 0A A9 01 8D BB 1A A9 02 8D FC 1A A0 00 20 F7 03 A0 00 20 24 03 A2 02 A9
|
||||
06A0: 58 8D FD 1A 8E FE 1A AD 5D 10 85 23 AD 5C 10 85 22 AE 5B 10 AD 5A 10 20 A1 12 A2 FF 8A 20 A9 11
|
||||
06C0: 8D 8F 1A 8E 90 1A A4 22 8C 91 1A A4 23 8C 92 1A A9 00 8D F7 1A AD F7 1A CD B9 1A B0 27 A9 CA A2
|
||||
06E0: 1A 18 6D F7 1A 90 01 E8 20 54 14 A0 00 20 0C 05 20 54 14 AD B8 1A 20 2C 15 A0 00 20 97 14 EE F7
|
||||
0700: 1A 4C D5 06 A0 00 20 24 03 AD 87 1A AE 88 1A 20 4A 15 AD B9 1A C9 05 D0 32 A9 00 8D F7 1A A2 00
|
||||
0720: AD F7 1A CD B8 1A B0 1C AD F7 1A 0A 90 02 E8 18 69 E1 A8 8A 69 1A AA 98 20 08 12 20 4A 15 EE F7
|
||||
0740: 1A 4C 1E 07 A9 30 A2 19 4C BC 07 A9 32 A2 19 20 4A 15 A9 00 8D F7 1A AD F7 1A 20 52 14 AD B8 1A
|
||||
0760: 4A 20 28 11 B0 1E A2 00 AD F7 1A 0A 90 02 E8 18 69 E1 A8 8A 69 1A AA 98 20 08 12 20 4A 15 EE F7
|
||||
0780: 1A 4C 57 07 A9 38 A2 19 20 4A 15 AD B8 1A 4A 8D F7 1A A2 00 AD F7 1A CD B8 1A B0 1C AD F7 1A 0A
|
||||
07A0: 90 02 E8 18 69 E1 A8 8A 69 1A AA 98 20 08 12 20 4A 15 EE F7 1A 4C 92 07 A9 3F A2 19 20 4A 15 A9
|
||||
07C0: 00 20 3E 14 20 CE 02 A9 42 A2 19 20 4A 15 A9 00 8D F7 1A CD B9 1A B0 13 A9 58 20 94 10 A9 20 20
|
||||
07E0: 94 10 AD F7 1A 18 69 01 4C D0 07 A9 48 A2 19 20 4A 15 AD B9 1A C9 05 D0 07 A9 4F A2 19 20 4A 15
|
||||
0800: AD BB 1A F0 07 A9 51 A2 19 20 4A 15 A9 5F A2 19 20 4A 15 A9 01 20 3E 14 20 CE 02 A9 01 8D F7 1A
|
||||
0820: AD F7 1A 38 ED BA 1A 85 30 90 05 F0 03 4C 67 0B A9 00 8D F8 1A AD F8 1A 20 52 14 AD B9 1A 20 28
|
||||
0840: 11 B0 0E AC F8 1A A9 00 99 CF 1A EE F8 1A 4C 35 08 A9 00 8D FB 1A 8D FA 1A AA AD F7 1A 20 B5 10
|
||||
0860: 20 C7 10 20 A1 12 A9 02 20 3E 14 A9 20 20 3E 14 20 3A 03 A9 61 A2 19 20 4A 15 AD F7 1A C9 01 D0
|
||||
0880: 0E A9 00 8D 5A 10 8D 5B 10 8D 5C 10 8D 5D 10 A9 00 8D F8 1A AD F8 1A CD B9 1A 90 03 4C 6E 09 A0
|
||||
08A0: 00 20 5F 10 AD BB 1A F0 5C AD 5D 10 85 23 AD 5C 10 85 22 AE 5B 10 AD 5A 10 20 A1 12 A2 00 A9 3B
|
||||
08C0: 20 39 12 20 A1 12 A2 76 A9 01 85 22 A9 00 85 23 A9 EB 20 BF 12 49 FF 38 6D FD 1A 8D FD 1A 8A 49
|
||||
08E0: FF 6D FE 1A 8D FE 1A A9 00 8D 5A 10 8D 5B 10 8D 5C 10 8D 5D 10 AE FE 1A E0 80 90 09 8D FD 1A 8D
|
||||
0900: FE 1A 4C 6E 09 8D F9 1A AD F9 1A CD B8 1A B0 11 AC F9 1A B9 D9 1A CD 5E 10 F0 06 EE F9 1A 4C 08
|
||||
0920: 09 AD B8 1A CD F9 1A D0 0C AD F8 1A 38 E9 01 8D F8 1A 4C 68 09 AC F9 1A B9 D9 1A 20 94 10 A9 20
|
||||
0940: 20 94 10 AC F8 1A B9 CA 1A CD F9 1A D0 11 AD FA 1A 18 69 01 8D FA 1A AC F8 1A A9 01 99 CF 1A AC
|
||||
0960: F8 1A AD F9 1A 99 D4 1A EE F8 1A 4C 94 08 AD F8 1A CD B9 1A B0 15 A9 65 A2 19 20 4A 15 AC F8 1A
|
||||
0980: A9 09 99 D4 1A EE F8 1A 4C 6E 09 A9 68 A2 19 20 4A 15 A9 00 8D F8 1A A2 00 AD F8 1A CD B9 1A B0
|
||||
09A0: 64 AC F8 1A B9 D4 1A 85 28 86 29 AC F8 1A B9 CA 1A E4 29 D0 04 C5 28 F0 46 8E F9 1A AD F9 1A CD
|
||||
09C0: B9 1A 8A E9 00 B0 38 AC F8 1A B9 D4 1A 85 28 AC F9 1A B9 CA 1A E4 29 D0 20 C5 28 D0 1C AC F9 1A
|
||||
09E0: B9 CF 1A D0 14 AD FB 1A 18 69 01 8D FB 1A AC F9 1A A9 01 99 CF 1A 4C FF 09 EE F9 1A 4C BC 09 EE
|
||||
0A00: F8 1A 4C 97 09 8E F8 1A AD F8 1A CD FA 1A B0 0B A9 2A 20 94 10 EE F8 1A 4C 08 0A A9 00 8D F8 1A
|
||||
0A20: AD F8 1A 20 52 14 AD B9 1A 38 ED FA 1A 38 ED FB 1A 20 28 11 B0 0B A9 20 20 94 10 EE F8 1A 4C 20
|
||||
0A40: 0A A9 00 8D F8 1A AD F8 1A CD FB 1A B0 0B A9 2B 20 94 10 EE F8 1A 4C 46 0A AD BB 1A F0 48 A9 6B
|
||||
0A60: A2 19 20 4A 15 AD FD 1A AE FE 1A 20 54 14 A9 0A 20 10 11 20 CE 10 20 A1 12 A9 02 20 3E 14 A9 30
|
||||
0A80: 20 3E 14 20 3A 03 A9 2E 20 94 10 AD FD 1A AE FE 1A 20 54 14 A2 00 A9 0A 20 7D 13 20 CE 10 20 A1
|
||||
0AA0: 12 A9 01 4C 41 0B AD B9 1A C9 04 D0 07 A9 75 A2 19 20 4A 15 A9 78 A2 19 20 4A 15 AD 5D 10 85 23
|
||||
0AC0: AD 5C 10 85 22 AE 5B 10 AD 5A 10 20 A1 12 A2 00 A9 3B 20 39 12 20 A1 12 A2 A5 A9 0E 85 22 A9 00
|
||||
0AE0: 85 23 A9 2E 20 BF 12 20 A1 12 A2 00 A9 3C 20 B9 12 20 A1 12 A9 02 20 3E 14 A9 30 20 3E 14 20 3A
|
||||
0B00: 03 A9 3A 20 94 10 AD 5D 10 85 23 AD 5C 10 85 22 AE 5B 10 AD 5A 10 20 A1 12 A2 00 A9 3B 20 39 12
|
||||
0B20: 20 A1 12 A2 A5 A9 0E 85 22 A9 00 85 23 A9 2E 20 BF 12 20 A1 12 A2 00 A9 3C 20 33 13 20 A1 12 A9
|
||||
0B40: 02 20 3E 14 A9 30 20 3E 14 20 3A 03 A9 0D 20 94 10 AD B9 1A CD FA 1A F0 0E AD FD 1A 0D FE 1A F0
|
||||
0B60: 06 EE F7 1A 4C 20 08 A9 01 20 3E 14 20 CE 02 A9 81 A2 19 20 4A 15 A9 00 8D F7 1A CD B9 1A B0 24
|
||||
0B80: AC F7 1A B9 CA 1A 85 28 A9 00 18 69 1A 85 29 A0 D9 B1 28 20 94 10 A9 20 20 94 10 AD F7 1A 18 69
|
||||
0BA0: 01 4C 78 0B A9 21 20 94 10 AD B9 1A C9 04 D0 07 A9 87 A2 19 20 4A 15 AD B9 1A CD FA 1A F0 03 4C
|
||||
0BC0: 3F 0D AD 89 1A AE 8A 1A 20 4A 15 AD FC 1A C9 02 D0 12 A9 58 38 ED FD 1A 8D FD 1A A9 02 ED FE 1A
|
||||
0BE0: AA 4C 13 0C AD 5D 10 85 23 AD 5C 10 85 22 AE 5B 10 AD 5A 10 20 A1 12 A2 00 A9 3B 20 39 12 20 A1
|
||||
0C00: 12 A2 A5 A9 0E 85 22 A9 00 85 23 A9 2E 20 BF 12 8D FD 1A 8E FE 1A A2 00 AD FC 1A 0A 90 02 E8 18
|
||||
0C20: 69 FF A8 8A 69 1A AA 98 20 54 14 20 08 12 20 56 11 A0 00 20 AD 14 A2 00 AD FC 1A 0A 90 02 E8 18
|
||||
0C40: 69 FF A8 8A 69 1A AA 98 20 08 12 E0 00 D0 3A C9 01 D0 36 AD FC 1A 0A 90 02 E8 18 69 0B A8 8A 69
|
||||
0C60: 1B AA 98 20 54 14 A2 00 AD FC 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 54 14 AD FD 1A AE FE
|
||||
0C80: 1A A0 00 20 AD 14 4C 65 0D A2 00 AD FC 1A 0A 90 02 E8 18 69 0B A8 8A 69 1B AA 98 20 54 14 A2 00
|
||||
0CA0: AD FC 1A 0A 90 02 E8 18 69 0B A8 8A 69 1B AA 98 20 6A 14 A2 00 AD FC 1A 0A 90 02 E8 18 69 FF A8
|
||||
0CC0: 8A 69 1A AA 98 20 08 12 20 FC 10 20 91 13 18 6D FD 1A 48 8A 6D FE 1A AA 68 20 54 14 A2 00 AD FC
|
||||
0CE0: 1A 0A 90 02 E8 18 69 FF A8 8A 69 1A AA 98 20 08 12 20 DF 14 A0 00 20 AD 14 AD FD 1A AE FE 1A 20
|
||||
0D00: 54 14 A2 00 AD FC 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 08 12 20 2A 11 B0 4C A2 00 AD FC
|
||||
0D20: 1A 0A 90 02 E8 18 69 11 85 28 8A 69 1B 85 29 AD FD 1A A0 00 91 28 C8 AD FE 1A 91 28 4C 68 0D AD
|
||||
0D40: 8B 1A AE 8C 1A 20 4A 15 A2 00 AD FC 1A 0A 90 02 E8 18 69 05 A8 8A 69 1B AA 98 20 54 14 20 08 12
|
||||
0D60: 20 56 11 A0 00 20 AD 14 A9 02 20 3E 14 20 CE 02 A9 0D 20 94 10 AD 8D 1A AE 8E 1A 20 4A 15 A9 00
|
||||
0D80: 8D 5E 10 AD 5E 10 C9 4E F0 0F AD 5E 10 C9 59 F0 08 A0 00 20 5F 10 4C 83 0D AD 5E 10 20 94 10 A0
|
||||
0DA0: 00 20 24 03 AD 5E 10 C9 59 D0 03 4C 16 06 A9 89 A2 19 20 4A 15 A9 91 A2 19 20 4A 15 A9 BA A2 19
|
||||
0DC0: 20 4A 15 A9 00 8D F7 1A AD F7 1A C9 03 90 03 4C 4F 10 A2 00 AD F7 1A 0A 90 02 E8 18 69 FF A8 8A
|
||||
0DE0: 69 1A AA 98 20 08 12 85 22 86 23 A2 00 AD F7 1A 0A 90 02 E8 18 69 05 A8 8A 69 1B AA 98 20 08 12
|
||||
0E00: 18 65 22 48 8A 65 23 AA 68 E0 00 D0 07 C9 00 D0 03 4C 49 10 A2 00 AD F7 1A 0A 90 02 E8 18 69 F1
|
||||
0E20: A8 8A 69 1A AA 98 20 08 12 20 4A 15 A9 E4 A2 19 20 4A 15 A2 00 AD F7 1A 0A 90 02 E8 18 69 FF A8
|
||||
0E40: 8A 69 1A AA 98 20 08 12 20 C7 10 20 A1 12 A9 04 20 3E 14 A9 20 20 3E 14 20 3A 03 A9 EA A2 19 20
|
||||
0E60: 4A 15 A2 00 AD F7 1A 0A 90 02 E8 18 69 05 A8 8A 69 1B AA 98 20 08 12 20 C7 10 20 A1 12 A9 04 20
|
||||
0E80: 3E 14 A9 20 20 3E 14 20 3A 03 A9 EF A2 19 20 4A 15 A2 00 AD F7 1A 0A 90 02 E8 18 69 0B A8 8A 69
|
||||
0EA0: 1B AA 98 20 08 12 E0 00 D0 0E C9 00 D0 0A A9 F4 A2 19 20 4A 15 4C 49 10 AD F7 1A C9 02 90 03 4C
|
||||
0EC0: 7F 0F A2 00 AD F7 1A 0A 90 02 E8 18 69 0B A8 8A 69 1B AA 98 20 6A 14 A9 3C 20 DD 14 20 C7 10 20
|
||||
0EE0: A1 12 A9 02 20 3E 14 A9 30 20 3E 14 20 3A 03 A9 3A 20 94 10 A2 00 AD F7 1A 0A 90 02 E8 18 69 0B
|
||||
0F00: A8 8A 69 1B AA 98 20 6A 14 A9 3C 20 2C 15 20 C7 10 20 A1 12 A9 02 20 3E 14 A9 30 20 3E 14 20 3A
|
||||
0F20: 03 A9 02 A2 1A 20 4A 15 A2 00 AD F7 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 6A 14 A9 3C 20
|
||||
0F40: DD 14 20 C7 10 20 A1 12 A9 02 20 3E 14 A9 30 20 3E 14 20 3A 03 A9 3A 20 94 10 A2 00 AD F7 1A 0A
|
||||
0F60: 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 6A 14 A9 3C 20 2C 15 20 C7 10 20 A1 12 A9 02 4C 3E 10 A9
|
||||
0F80: 20 20 94 10 A2 00 AD F7 1A 0A 90 02 E8 18 69 0B A8 8A 69 1B AA 98 20 6A 14 A9 0A 20 DD 14 20 C7
|
||||
0FA0: 10 20 A1 12 A9 02 20 3E 14 A9 20 20 3E 14 20 3A 03 A9 2E 20 94 10 A2 00 AD F7 1A 0A 90 02 E8 18
|
||||
0FC0: 69 0B A8 8A 69 1B AA 98 20 6A 14 A9 0A 20 2C 15 20 C7 10 20 A1 12 A9 01 20 3E 14 A9 30 20 3E 14
|
||||
0FE0: 20 3A 03 A9 06 A2 1A 20 4A 15 A2 00 AD F7 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 6A 14 A9
|
||||
1000: 0A 20 DD 14 20 C7 10 20 A1 12 A9 02 20 3E 14 A9 20 20 3E 14 20 3A 03 A9 2E 20 94 10 A2 00 AD F7
|
||||
1020: 1A 0A 90 02 E8 18 69 11 A8 8A 69 1B AA 98 20 6A 14 A9 0A 20 2C 15 20 C7 10 20 A1 12 A9 01 20 3E
|
||||
1040: 14 A9 30 20 3E 14 20 3A 03 EE F7 1A 4C C8 0D A9 0B A2 1A 20 4A 15 A2 00 8A 60 00 00 00 00 00 AD
|
||||
1060: 11 D0 30 27 18 A9 01 6D 5A 10 8D 5A 10 A9 00 2A 6D 5B 10 8D 5B 10 A9 00 2A 6D 5C 10 8D 5C 10 A9
|
||||
1080: 00 2A 6D 5D 10 8D 5D 10 18 90 D4 AD 10 D0 29 7F 8D 5E 10 60 4C EF FF 48 20 1E 14 20 A2 10 68 4C
|
||||
10A0: EF FF 18 20 1E 14 60 C8 48 18 98 65 20 85 20 90 02 E6 21 68 60 A2 00 86 22 86 23 60 C9 80 90 F5
|
||||
10C0: A2 FF 86 22 86 23 60 A0 00 84 22 84 23 60 E0 80 90 F5 A0 FF 84 22 84 23 60 AD 17 1B AE 18 1B 20
|
||||
10E0: 54 14 AD 19 1B AE 1A 1B 20 54 14 A0 04 4C 71 05 A0 00 F0 07 A9 73 A2 1A 4C 93 1A 60 38 E9 01 B0
|
||||
1100: 01 CA 60 A5 20 38 E9 04 85 20 90 01 60 C6 21 60 A2 00 20 79 14 20 EE 14 A6 23 A5 30 45 31 10 05
|
||||
1120: A5 22 4C 10 14 A5 22 60 A2 00 85 22 86 23 A0 00 B1 20 AA E6 20 D0 02 E6 21 B1 20 E6 20 D0 02 E6
|
||||
1140: 21 38 E5 23 D0 09 E4 22 F0 04 69 FF 09 01 60 50 FD 49 FF 09 01 60 18 69 01 90 01 E8 60 E6 20 D0
|
||||
1160: 02 E6 21 60 A0 01 B1 20 AA 88 B1 20 E6 20 F0 05 E6 20 F0 03 60 E6 20 E6 21 60 A0 04 4C A8 10 A0
|
||||
1180: 06 4C A8 10 A0 00 84 22 84 23 18 A0 00 71 20 C8 85 30 8A 71 20 AA C8 A5 22 71 20 85 22 C8 A5 23
|
||||
11A0: 71 20 85 23 A5 30 4C A7 10 A0 00 84 22 84 23 A0 00 31 20 85 30 C8 8A 31 20 AA C8 A5 22 31 20 85
|
||||
11C0: 22 C8 A5 23 31 20 85 23 A5 30 4C A7 10 85 28 86 29 A0 03 B1 20 38 E5 23 D0 22 88 B1 20 C5 22 D0
|
||||
11E0: 0C 88 B1 20 C5 29 D0 05 88 B1 20 C5 28 08 20 7A 11 28 F0 04 B0 03 A9 FF 60 A9 01 60 50 04 49 FF
|
||||
1200: 09 01 08 20 7A 11 28 60 A0 01 85 28 86 29 B1 28 AA 88 B1 28 60 A0 03 B1 20 85 23 88 B1 20 85 22
|
||||
1220: 88 B1 20 AA 88 B1 20 60 84 2E 18 65 2E 90 09 E8 D0 06 E6 22 D0 02 E6 23 60 A0 00 84 22 84 23 85
|
||||
1240: 28 86 29 A0 00 B1 20 85 2C C8 B1 20 85 2D C8 B1 20 85 2E C8 B1 20 85 2F 20 A7 10 A9 00 85 33 85
|
||||
1260: 32 85 31 A0 20 46 33 66 32 66 31 6A 66 23 66 22 66 29 66 28 90 17 18 65 2C 48 A5 2D 65 31 85 31
|
||||
1280: A5 2E 65 32 85 32 A5 2F 65 33 85 33 68 88 10 D5 A5 28 A6 29 60 20 CD 11 4C 4C 13 A0 00 84 22 84
|
||||
12A0: 23 48 20 03 11 A0 03 A5 23 91 20 88 A5 22 91 20 88 8A 91 20 88 68 91 20 60 A0 00 84 22 84 23 20
|
||||
12C0: CA 12 20 EE 12 A5 28 A6 29 60 85 2C 86 2D A5 22 85 2E A5 23 85 2F A0 00 B1 20 85 28 C8 B1 20 85
|
||||
12E0: 29 C8 B1 20 85 22 C8 B1 20 85 23 4C A7 10 A9 00 85 2B 85 32 85 33 A0 20 06 28 26 29 26 22 26 23
|
||||
1300: 2A 26 2B 26 32 26 33 48 C5 2C A5 2B E5 2D A5 32 E5 2E A5 33 E5 2F 90 14 85 33 68 E5 2C 48 A5 2B
|
||||
1320: E5 2D 85 2B A5 32 E5 2E 85 32 E6 28 68 88 D0 C8 85 2A 60 A0 00 84 22 84 23 20 CA 12 20 EE 12 A5
|
||||
1340: 32 85 22 A5 33 85 23 A5 2A A6 2B 60 D0 2A A2 00 8A 60 F0 24 A2 00 8A 60 F0 1E 30 1C A2 00 8A 60
|
||||
1360: F0 02 10 14 A2 00 8A 60 F0 0E 90 0C A2 00 8A 60 F0 02 B0 04 A2 00 8A 60 A2 00 A9 01 60 A2 00 20
|
||||
1380: 79 14 20 EE 14 A5 28 A6 29 24 30 10 03 4C 10 14 60 85 2E 8A F0 2E 86 2F 20 2A 14 A9 00 A6 23 F0
|
||||
13A0: 26 85 30 A0 10 46 2F 66 2E 90 0A 18 65 22 48 8A 65 30 85 30 68 66 30 6A 66 2F 66 2E 88 D0 EA A5
|
||||
13C0: 2E A6 2F 60 4C D8 13 A4 22 A6 2E 86 22 A6 2F 84 2E A0 08 4C E3 13 85 2E 20 2A 14 A9 00 A0 08 A6
|
||||
13E0: 23 F0 1C 85 2F 46 2E 90 0A 18 65 22 48 8A 65 2F 85 2F 68 66 2F 6A 66 2E 88 D0 EC AA A5 2E 60 46
|
||||
1400: 2E 90 03 18 65 22 6A 66 2E 88 D0 F5 AA A5 2E 60 18 49 FF 69 01 48 8A 49 FF 69 00 AA 68 60 A0 00
|
||||
1420: B1 20 E6 20 F0 01 60 E6 21 60 48 A0 01 B1 20 85 23 88 B1 20 85 22 68 4C 6C 11 A0 00 B1 20 A4 20
|
||||
1440: F0 07 C6 20 A0 00 91 20 60 C6 21 C6 20 91 20 60 A9 00 A2 00 48 A5 20 38 E9 02 85 20 B0 02 C6 21
|
||||
1460: A0 01 8A 91 20 68 88 91 20 60 A0 01 85 28 86 29 B1 28 AA 88 B1 28 4C 54 14 86 31 E0 00 10 03 20
|
||||
1480: 10 14 85 2E 86 2F 20 64 11 86 30 E0 00 10 03 20 10 14 85 22 86 23 60 48 84 30 A0 01 B1 20 85 29
|
||||
14A0: 88 B1 20 85 28 A4 30 68 91 28 4C 6C 11 84 30 48 A0 01 B1 20 85 29 88 B1 20 85 28 A4 30 C8 8A 91
|
||||
14C0: 28 88 68 91 28 4C 6C 11 A0 00 91 20 C8 48 8A 91 20 C8 A5 22 91 20 C8 A5 23 91 20 68 60 A2 00 85
|
||||
14E0: 2E 86 2F 20 2A 14 20 EE 14 A5 22 A6 23 60 A9 00 85 29 A0 10 A6 23 F0 1F 06 22 26 23 2A 26 29 48
|
||||
1500: C5 2E A5 29 E5 2F 90 08 85 29 68 E5 2E 48 E6 22 68 88 D0 E4 85 28 60 06 22 26 23 2A B0 04 C5 2E
|
||||
1520: 90 04 E5 2E E6 22 88 D0 EE 85 28 60 A2 00 85 2E 86 2F 20 2A 14 20 EE 14 A5 28 A6 29 60 85 28 86
|
||||
1540: 29 20 1E 14 20 A2 10 4C 4E 15 85 28 86 29 A0 00 B1 28 F0 0E C8 84 30 20 9F 10 A4 30 D0 F2 E6 29
|
||||
1560: D0 EE 60 43 4F 44 45 42 52 45 41 4B 45 52 21 0D 0D 22 43 52 41 43 4B 45 44 22 20 42 59 20 45 47
|
||||
1580: 41 4E 20 46 4F 52 44 0D 0D 0D 0D 00 57 4F 55 4C 44 20 59 4F 55 20 4C 49 4B 45 20 54 4F 20 50 4C
|
||||
15A0: 41 59 20 41 53 20 41 0D 0D 5B 4E 5D 4F 56 49 43 45 2C 20 5B 50 5D 52 4F 2C 20 4F 52 20 5B 4D 5D
|
||||
15C0: 41 53 54 45 52 3F 20 00 44 4F 20 59 4F 55 20 4E 45 45 44 20 49 4E 53 54 52 55 43 54 49 4F 4E 53
|
||||
15E0: 3F 20 00 0A 47 4F 41 4C 3A 20 20 43 52 41 43 4B 20 54 48 45 20 43 4F 44 45 2E 20 20 46 41 49 4C
|
||||
1600: 55 52 45 20 49 53 20 4E 4F 54 0D 0A 20 20 20 20 20 20 20 41 4E 20 4F 50 54 49 4F 4E 21 0D 0A 0D
|
||||
1620: 0A 43 4F 44 45 3A 20 20 54 48 45 20 43 4F 44 45 20 49 53 20 43 4F 4D 50 4F 53 45 44 20 4F 46 20
|
||||
1640: 00 20 43 4F 4C 4F 52 53 0D 0A 20 20 20 20 20 20 20 4F 55 54 20 4F 46 20 41 20 53 45 54 20 4F 46
|
||||
1660: 20 00 2E 20 20 44 55 50 4C 49 43 41 54 45 53 0D 0A 20 20 20 20 20 20 20 41 4C 4C 4F 57 45 44 2E
|
||||
1680: 0D 0A 0D 0A 52 55 4C 45 53 3A 20 59 4F 55 20 48 41 56 45 20 00 20 41 54 54 45 4D 50 54 53 2E 20
|
||||
16A0: 20 41 46 54 45 52 20 45 41 43 48 0A 20 20 20 20 20 20 20 41 54 54 45 4D 50 54 20 41 20 43 4C 55
|
||||
16C0: 45 20 57 49 4C 4C 20 42 45 20 47 49 56 45 4E 2E 0D 0A 0D 0A 43 4C 55 45 53 3A 20 41 4E 20 2A 20
|
||||
16E0: 49 4E 44 49 43 41 54 45 53 20 54 48 41 54 20 59 4F 55 20 48 41 56 45 20 41 0D 0A 20 20 20 20 20
|
||||
1700: 20 20 43 4F 52 52 45 43 54 20 43 4F 4C 4F 52 20 49 4E 20 54 48 45 20 43 4F 52 52 45 43 54 0D 0A
|
||||
1720: 20 20 20 20 20 20 20 50 4C 41 43 45 2E 20 20 41 20 2B 20 49 4E 44 49 43 41 54 45 53 20 54 48 41
|
||||
1740: 54 20 59 4F 55 0D 0A 20 20 20 20 20 20 20 48 41 56 45 20 41 20 43 4F 52 52 45 43 54 20 43 4F 4C
|
||||
1760: 4F 52 2E 20 20 59 4F 55 0D 0A 20 20 20 20 20 20 20 4E 45 45 44 20 00 20 2A 27 53 20 54 4F 20 57
|
||||
1780: 49 4E 2E 20 20 54 48 45 0D 0A 20 20 20 20 20 20 20 50 4F 53 49 54 49 4F 4E 20 4F 46 20 54 48 45
|
||||
17A0: 20 43 4C 55 45 53 20 49 53 20 4E 4F 54 0D 0A 20 20 20 20 20 20 20 52 45 4C 45 56 41 4E 54 2E 0D
|
||||
17C0: 0A 0D 0A 53 43 4F 52 45 3A 20 54 49 4D 45 20 49 4E 20 53 45 43 4F 4E 44 53 2E 20 20 47 4F 4F 44
|
||||
17E0: 20 4C 55 43 4B 21 0D 0A 0D 0A 0D 0A 00 0D 41 20 50 52 4F 20 47 41 4D 45 20 57 49 54 48 20 41 20
|
||||
1800: 54 57 49 53 54 2E 2E 2E 0D 0D 0D 0D 20 20 20 20 20 20 20 59 4F 55 20 4F 4E 4C 59 20 48 41 56 45
|
||||
1820: 20 36 30 20 53 45 43 4F 4E 44 53 21 0D 0D 0D 0D 00 50 52 45 53 53 20 41 4E 59 20 4B 45 59 20 54
|
||||
1840: 4F 20 42 45 47 49 4E 20 43 52 41 43 4B 49 4E 47 20 00 0A 20 20 20 20 20 20 20 20 20 20 20 20 20
|
||||
1860: 20 43 4F 44 45 42 52 45 41 4B 45 52 21 0D 0A 0D 0A 00 20 20 20 20 20 59 4F 55 27 56 45 20 43 52
|
||||
1880: 41 43 4B 45 44 20 49 54 21 0D 00 20 20 20 20 20 20 20 59 4F 55 27 56 45 20 46 41 49 4C 45 44 0D
|
||||
18A0: 00 57 4F 55 4C 44 20 59 4F 55 20 4C 49 4B 45 20 54 4F 20 50 4C 41 59 20 41 47 41 49 4E 3F 20 00
|
||||
18C0: 20 5B 52 5D 45 44 20 20 20 20 00 20 5B 47 5D 52 45 45 4E 20 20 00 20 5B 42 5D 4C 55 45 20 20 20
|
||||
18E0: 00 20 5B 59 5D 45 4C 4C 4F 57 20 00 20 5B 4F 5D 52 41 4E 47 45 20 00 20 5B 50 5D 55 52 50 4C 45
|
||||
1900: 20 00 20 5B 53 5D 49 4C 56 45 52 20 00 20 5B 43 5D 4F 50 50 45 52 20 00 4E 4F 56 49 43 45 00 50
|
||||
1920: 52 4F 20 20 20 00 4D 41 53 54 45 52 00 0D 0D 00 0D 00 20 20 20 20 20 00 0D 20 20 20 20 20 00 0D
|
||||
1940: 0D 00 20 20 20 21 20 00 21 20 43 4C 55 45 00 53 00 20 20 54 49 4D 45 3A 20 2D 36 30 2E 30 00 0D
|
||||
1960: 00 20 21 20 00 2D 20 00 21 20 00 20 20 54 49 4D 45 3A 20 2D 00 20 20 00 20 20 54 49 4D 45 3A 20
|
||||
1980: 00 20 20 20 21 20 00 20 00 53 54 41 54 53 0D 0D 00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
|
||||
19A0: 20 20 20 20 20 20 20 20 20 20 2D 2D 2D 2D 2D 54 49 4D 45 53 2D 2D 2D 2D 2D 00 47 41 4D 45 20 20
|
||||
19C0: 20 20 43 52 41 43 4B 45 44 20 20 46 41 49 4C 45 44 20 20 41 56 45 52 41 47 45 20 20 20 20 42 45
|
||||
19E0: 53 54 0D 00 20 20 20 20 20 00 20 20 20 20 00 20 20 20 20 00 2D 2D 2D 2D 2D 20 20 20 2D 2D 2D 2D
|
||||
1A00: 2D 00 20 20 20 00 20 20 20 20 00 0D 0D 0D 0D 54 4F 20 50 4C 41 59 20 41 47 41 49 4E 20 54 59 50
|
||||
1A20: 45 3A 20 20 32 38 30 52 0D 0D 00 20 20 20 00 50 52 4F 00 4D 41 53 54 45 52 00 4E 4F 56 49 43 45
|
||||
1A40: 00 20 49 4E 53 54 52 55 43 54 49 4F 4E 53 0D 0D 00 2E 3A 27 52 47 42 59 4F 50 53 43 C0 18 CB 18
|
||||
1A60: D6 18 E1 18 EC 18 F7 18 02 19 0D 19 18 19 1F 19 26 19 00 63 15 8C 15 C8 15 E3 15 41 16 62 16 95
|
||||
1A80: 16 77 17 ED 17 31 18 52 18 72 18 8B 18 A1 18 01 00 00 00 8D A1 1A 8E A2 1A 8D A8 1A 8E A9 1A 88
|
||||
1AA0: B9 FF FF 8D B2 1A 88 B9 FF FF 8D B1 1A 8C B4 1A 20 FF FF A0 FF D0 E8 60
|
BIN
codebreaker.8k.wav
Normal file
BIN
codebreaker.8k.wav
Normal file
Binary file not shown.
427
codebreaker.c
Normal file
427
codebreaker.c
Normal file
@ -0,0 +1,427 @@
|
||||
/*
|
||||
|
||||
Codebreaker, Version 1.0, Sun May 13 13:49:18 GMT 2012
|
||||
|
||||
Copyright (c) 2012 All Rights Reserved, Egan Ford (egan@sense.net)
|
||||
|
||||
THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
|
||||
PARTICULAR PURPOSE.
|
||||
|
||||
License:
|
||||
* Public Domain.
|
||||
* Do what you like, remember to credit all sources when using.
|
||||
|
||||
*/
|
||||
|
||||
#include <conio.h>
|
||||
|
||||
#define TIME ((count*59)/959790)
|
||||
#define TENTHS ((count*59)/95979)
|
||||
#define DEBUG 0
|
||||
#define TOP 0
|
||||
#define MIDDLE 1
|
||||
#define BOTTOM 2
|
||||
#define NOVICE 0
|
||||
#define PRO 1
|
||||
#define MASTER 2
|
||||
#define TIMER 600
|
||||
#define srand(x) next = (x)
|
||||
|
||||
extern void getkey();
|
||||
extern void __fastcall__ putchar(char);
|
||||
extern unsigned long count;
|
||||
extern unsigned char key;
|
||||
|
||||
void drawboard(unsigned char);
|
||||
void clearscreen();
|
||||
void printnum(unsigned long, unsigned char, unsigned char);
|
||||
void instructions();
|
||||
int rand();
|
||||
//void srand(unsigned int);
|
||||
|
||||
const char *title = "CODEBREAKER!\r\r\"CRACKED\" BY EGAN FORD\r\r\r\r";
|
||||
const char *novicepro = "WOULD YOU LIKE TO PLAY AS A\r\r[N]OVICE, [P]RO, OR [M]ASTER? ";
|
||||
const char *insprompt = "DO YOU NEED INSTRUCTIONS? ";
|
||||
|
||||
const char *instruct1 = "\
|
||||
GOAL: CRACK THE CODE. FAILURE IS NOT\r\
|
||||
AN OPTION!\r\
|
||||
\r\
|
||||
CODE: THE CODE IS COMPOSED OF ";
|
||||
|
||||
const char *instruct2 = " COLORS\r\
|
||||
OUT OF A SET OF ";
|
||||
|
||||
const char *instruct3 = ". DUPLICATES\r\
|
||||
ALLOWED.\r\
|
||||
\r\
|
||||
RULES: YOU HAVE ";
|
||||
|
||||
const char *instruct4 = " ATTEMPTS. AFTER EACH\
|
||||
ATTEMPT A CLUE WILL BE GIVEN.\r\
|
||||
\r\
|
||||
CLUES: AN * INDICATES THAT YOU HAVE A\r\
|
||||
CORRECT COLOR IN THE CORRECT\r\
|
||||
PLACE. A + INDICATES THAT YOU\r\
|
||||
HAVE A CORRECT COLOR. YOU\r\
|
||||
NEED ";
|
||||
|
||||
const char *instruct5 = " *'S TO WIN. THE\r\
|
||||
POSITION OF THE CLUES IS NOT\r\
|
||||
RELEVANT.\r\
|
||||
\r\
|
||||
SCORE: TIME IN SECONDS. GOOD LUCK!\r\
|
||||
\r\
|
||||
\r\
|
||||
";
|
||||
const char *instructg =
|
||||
"\rA PRO GAME WITH A TWIST...\r\r\r\r YOU ONLY HAVE 60 SECONDS!\r\r\r\r";
|
||||
const char *anykey = "PRESS ANY KEY TO BEGIN CRACKING ";
|
||||
const char *header = "\
|
||||
CODEBREAKER!\r\
|
||||
\r\
|
||||
";
|
||||
const char *won = " YOU'VE CRACKED IT!\r";
|
||||
const char *fail = " YOU'VE FAILED\r";
|
||||
const char *playagain = "WOULD YOU LIKE TO PLAY AGAIN? ";
|
||||
|
||||
unsigned long int next = 1;
|
||||
char numcolors, slots, attempts, tt;
|
||||
|
||||
int main(void)
|
||||
{
|
||||
char code[5], claimed[5], guess[5];
|
||||
char colors[] = { 'R', 'G', 'B', 'Y', 'O', 'P', 'S', 'C' };
|
||||
char *colorkey[] =
|
||||
{ " [R]ED ", " [G]REEN ", " [B]LUE ", " [Y]ELLOW ",
|
||||
" [O]RANGE ", " [P]URPLE ", " [S]ILVER ", " [C]OPPER "
|
||||
};
|
||||
char *gametypes[] = { "NOVICE", "PRO ", "MASTER" };
|
||||
char i, j, k, right, close, gametype;
|
||||
signed int timer;
|
||||
unsigned int win[3], loss[3], avgtime[3], besttime[3];
|
||||
|
||||
for(i = 0; i < 3; ++i)
|
||||
win[i] = loss[i] = avgtime[i] = besttime[i] = 0;
|
||||
|
||||
clearscreen();
|
||||
cputs(title);
|
||||
|
||||
while (1) {
|
||||
tt = 0;
|
||||
numcolors = 8;
|
||||
slots = 5;
|
||||
attempts = 12;
|
||||
gametype = PRO;
|
||||
cputs(novicepro);
|
||||
key = 0;
|
||||
while (key != 'N' && key != 'P' && key != 'M')
|
||||
getkey();
|
||||
putchar(key);
|
||||
cputs("\r\r");
|
||||
if (key == 'N') {
|
||||
numcolors = 6;
|
||||
slots = 4;
|
||||
attempts = 10;
|
||||
gametype = NOVICE;
|
||||
}
|
||||
if (key == 'M') {
|
||||
tt = 1;
|
||||
gametype = MASTER;
|
||||
}
|
||||
instructions();
|
||||
clearscreen();
|
||||
|
||||
timer = TIMER;
|
||||
srand(count & 0xFFFF);
|
||||
for (i = 0; i < slots; ++i) {
|
||||
code[i] = rand() % numcolors;
|
||||
}
|
||||
|
||||
clearscreen();
|
||||
cputs(header);
|
||||
if (slots == 5) {
|
||||
for (i = 0; i < numcolors; ++i)
|
||||
cputs(colorkey[i]);
|
||||
cputs("\r");
|
||||
} else {
|
||||
cputs(" ");
|
||||
for (i = 0; i < numcolors / 2; ++i)
|
||||
cputs(colorkey[i]);
|
||||
cputs("\r ");
|
||||
for (i = numcolors / 2; i < numcolors; ++i)
|
||||
cputs(colorkey[i]);
|
||||
cputs("\r\r");
|
||||
}
|
||||
|
||||
drawboard(TOP);
|
||||
cputs(" ! ");
|
||||
for (i = 0; i < slots; i++) {
|
||||
#if DEBUG==1
|
||||
putchar(colors[code[i]]);
|
||||
#else
|
||||
putchar('X');
|
||||
#endif
|
||||
putchar(' ');
|
||||
}
|
||||
cputs("! CLUE");
|
||||
if (slots == 5)
|
||||
cputs("S");
|
||||
if (tt)
|
||||
cputs(" TIME: -60.0");
|
||||
cputs("\r");
|
||||
drawboard(MIDDLE);
|
||||
|
||||
for (i = 1; i <= attempts; ++i) {
|
||||
for (j = 0; j < slots; ++j)
|
||||
claimed[j] = 0;
|
||||
right = close = 0;
|
||||
printnum(i, 2, ' ');
|
||||
cputs(" ! ");
|
||||
if(i == 1)
|
||||
count = 0;
|
||||
for (j = 0; j < slots; ++j) {
|
||||
getkey();
|
||||
if (tt) {
|
||||
timer -= TENTHS;
|
||||
count = 0;
|
||||
if (timer < 0) {
|
||||
timer = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (k = 0; k < numcolors; ++k)
|
||||
if (key == colors[k])
|
||||
break;
|
||||
if (k == numcolors) {
|
||||
j--;
|
||||
continue;
|
||||
}
|
||||
putchar(colors[k]);
|
||||
putchar(' ');
|
||||
if (k == code[j]) {
|
||||
right++;
|
||||
claimed[j] = 1;
|
||||
}
|
||||
guess[j] = k;
|
||||
}
|
||||
for (; j < slots; ++j) {
|
||||
cputs("- ");
|
||||
guess[j] = 9;
|
||||
}
|
||||
cputs("! ");
|
||||
for (j = 0; j < slots; ++j) {
|
||||
if (guess[j] == code[j])
|
||||
continue;
|
||||
for (k = 0; k < slots; ++k)
|
||||
if (guess[j] == code[k] && !claimed[k]) {
|
||||
close++;
|
||||
claimed[k] = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (j = 0; j < right; ++j)
|
||||
putchar('*');
|
||||
for (j = 0; j < slots - right - close; ++j)
|
||||
putchar(' ');
|
||||
for (j = 0; j < close; ++j)
|
||||
putchar('+');
|
||||
|
||||
if (tt) {
|
||||
cputs(" TIME: -");
|
||||
printnum(timer / 10, 2, '0');
|
||||
putchar('.');
|
||||
printnum(timer % 10, 1, '0');
|
||||
putchar(0xd);
|
||||
} else {
|
||||
if (slots == 4)
|
||||
cputs(" ");
|
||||
cputs(" TIME: ");
|
||||
printnum(TIME / 60, 2, '0');
|
||||
putchar(':');
|
||||
printnum(TIME % 60, 2, '0');
|
||||
putchar(0xd);
|
||||
}
|
||||
|
||||
if (right == slots || timer == 0)
|
||||
break;
|
||||
}
|
||||
|
||||
drawboard(MIDDLE);
|
||||
cputs(" ! ");
|
||||
for (i = 0; i < slots; i++) {
|
||||
putchar(colors[code[i]]);
|
||||
putchar(' ');
|
||||
}
|
||||
putchar('!');
|
||||
if (slots == 4)
|
||||
cputs(" ");
|
||||
if (right == slots) {
|
||||
cputs(won);
|
||||
if(gametype == MASTER)
|
||||
timer = TIMER - timer;
|
||||
else
|
||||
timer = TIME;
|
||||
win[gametype] += 1;
|
||||
if(win[gametype] == 1)
|
||||
avgtime[gametype] = besttime[gametype] = timer;
|
||||
else {
|
||||
avgtime[gametype] = (avgtime[gametype]*(win[gametype] - 1)+timer)/win[gametype];
|
||||
if(timer < besttime[gametype])
|
||||
besttime[gametype] = timer;
|
||||
}
|
||||
}
|
||||
else {
|
||||
cputs(fail);
|
||||
loss[gametype] += 1;
|
||||
}
|
||||
drawboard(BOTTOM);
|
||||
putchar(0xd);
|
||||
|
||||
cputs(playagain);
|
||||
key = 0;
|
||||
while (key != 'N' && key != 'Y')
|
||||
getkey();
|
||||
putchar(key);
|
||||
clearscreen();
|
||||
if (key == 'Y')
|
||||
continue;
|
||||
|
||||
cputs("STATS\r\r");
|
||||
cputs(" -----TIMES-----");
|
||||
cputs("GAME CRACKED FAILED AVERAGE BEST\r");
|
||||
for(i = 0; i < 3; ++i) {
|
||||
if(win[i] + loss[i] == 0)
|
||||
continue;
|
||||
cputs(gametypes[i]);
|
||||
cputs(" ");
|
||||
printnum(win[i],4,' ');
|
||||
cputs(" ");
|
||||
printnum(loss[i],4,' ');
|
||||
cputs(" ");
|
||||
if(avgtime[i] == 0) {
|
||||
cputs("----- -----");
|
||||
continue;
|
||||
}
|
||||
if(i < 2) {
|
||||
printnum(avgtime[i] / 60, 2, '0');
|
||||
putchar(':');
|
||||
printnum(avgtime[i] % 60, 2, '0');
|
||||
cputs(" ");
|
||||
printnum(besttime[i] / 60, 2, '0');
|
||||
putchar(':');
|
||||
printnum(besttime[i] % 60, 2, '0');
|
||||
}
|
||||
else {
|
||||
putchar(' ');
|
||||
printnum(avgtime[i] / 10, 2, ' ');
|
||||
putchar('.');
|
||||
printnum(avgtime[i] % 10, 1, '0');
|
||||
cputs(" ");
|
||||
printnum(besttime[i] / 10, 2, ' ');
|
||||
putchar('.');
|
||||
printnum(besttime[i] % 10, 1, '0');
|
||||
}
|
||||
}
|
||||
cputs("\r\r\r\rTO PLAY AGAIN TYPE: 280R\r\r");
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if CODESEG == 1
|
||||
#pragma codeseg ("CODE1")
|
||||
#endif
|
||||
|
||||
void drawboard(unsigned char p)
|
||||
{
|
||||
char i, ends[] = { '.', ':', '''};
|
||||
|
||||
cputs(" ");
|
||||
putchar(ends[p]);
|
||||
for(i=0;i<slots*2+1;++i)
|
||||
putchar('-');
|
||||
putchar(ends[p]);
|
||||
putchar(0xd);
|
||||
}
|
||||
|
||||
void clearscreen()
|
||||
{
|
||||
char i=25;
|
||||
|
||||
while(--i)
|
||||
putchar(0xd);
|
||||
}
|
||||
|
||||
void printnum(unsigned long n, char padding, char pad)
|
||||
{
|
||||
char i=8, c[8];
|
||||
|
||||
while(n > 0) {
|
||||
c[--i]=(n%10 + 0x30);
|
||||
n/=10;
|
||||
}
|
||||
if(padding > 0) {
|
||||
while(i > 0)
|
||||
c[--i]=pad;
|
||||
for(i=8-padding;i<8;++i)
|
||||
putchar(c[i]);
|
||||
return;
|
||||
}
|
||||
for(;i<8;++i)
|
||||
putchar(c[i]);
|
||||
}
|
||||
|
||||
void instructions()
|
||||
{
|
||||
cputs(insprompt);
|
||||
key = 0;
|
||||
while (key != 'N' && key != 'Y')
|
||||
getkey();
|
||||
putchar(key);
|
||||
if(key == 'N')
|
||||
return;
|
||||
clearscreen();
|
||||
if(slots == 5)
|
||||
if(tt == 0)
|
||||
cputs("PRO");
|
||||
else
|
||||
cputs("MASTER");
|
||||
else
|
||||
cputs("NOVICE");
|
||||
cputs(" INSTRUCTIONS\r\r");
|
||||
if(tt == 0) {
|
||||
cputs(instruct1);
|
||||
printnum(slots,0,'0');
|
||||
cputs(instruct2);
|
||||
printnum(numcolors,0,'0');
|
||||
cputs(instruct3);
|
||||
printnum(attempts,0,'0');
|
||||
cputs(instruct4);
|
||||
printnum(slots,0,'0');
|
||||
cputs(instruct5);
|
||||
}
|
||||
else
|
||||
cputs(instructg);
|
||||
cputs(anykey);
|
||||
getkey();
|
||||
}
|
||||
|
||||
int rand()
|
||||
{
|
||||
next = next * 1103515245 + 12345;
|
||||
return (unsigned int)(next/65536UL) % 32768UL;
|
||||
}
|
||||
|
||||
/*
|
||||
void srand(unsigned int seed)
|
||||
{
|
||||
next = seed;
|
||||
}
|
||||
*/
|
||||
|
||||
|
BIN
codebreaker.po
Normal file
BIN
codebreaker.po
Normal file
Binary file not shown.
40
getkey.s
Normal file
40
getkey.s
Normal file
@ -0,0 +1,40 @@
|
||||
.if CODESEG = 1
|
||||
.segment "CODE1"
|
||||
.endif
|
||||
|
||||
.export _getkey
|
||||
.export _count
|
||||
.export _key
|
||||
|
||||
KBDCR = $D011 ; Apple I got key?
|
||||
KBDDATA = $D010 ; The key pressed
|
||||
|
||||
_count: .byte 0,0,0,0
|
||||
_key: .byte 0
|
||||
|
||||
_getkey:
|
||||
LDA KBDCR ; cycles 4 got key?
|
||||
BMI DONE ; cycles 2 if neg, got key goto DONE
|
||||
CLC ; cycles 2 clear carry
|
||||
LDA #1 ; cycles 2 A = 1
|
||||
ADC _count+0 ; cycles 4 LSB += A
|
||||
STA _count+0 ; cycles 4
|
||||
LDA #0 ; cycles 2 A = 0
|
||||
ROL A ; cycles 2 A = carry, carry = 0
|
||||
ADC _count+1 ; cycles 4
|
||||
STA _count+1 ; cycles 4
|
||||
LDA #0 ; cycles 2 A = 0
|
||||
ROL A ; cycles 2 A = carry, carry = 0
|
||||
ADC _count+2 ; cycles 4
|
||||
STA _count+2 ; cycles 4
|
||||
LDA #0 ; cycles 2 A = 0
|
||||
ROL A ; cycles 2 A = carry, carry = 0
|
||||
ADC _count+3 ; cycles 4
|
||||
STA _count+3 ; cycles 4
|
||||
CLC ; cycles 2 clear carry
|
||||
BCC _getkey ; cycles 2 + 1 back to checking for key
|
||||
; total = 59
|
||||
DONE: LDA KBDDATA ; get key value
|
||||
AND #$7F ; 7th bit to 0
|
||||
STA _key ; store in _key
|
||||
RTS
|
Loading…
Reference in New Issue
Block a user