Changelog & co.---------------0.6---* restored partial decoding for ULA's port 254. This fixes a problem with Death Chase not reading the keyboard.* any read of Kempston joystick port now automatically disables Sinclair joystick emulation.* added code that detects the Rapidus accelerator board and configures it for best performance.* added switch -A which causes the emulator to start the loaded program automatically, and automatically quit to DOS when the user presses Start.* Z80 flags are now fully evaluated before displaying register contents in the menu.* ADC HL,HL and SBC HL,HL 5 clocks faster now.* revised wavetable for sound output.* fixed bug in reading IFF2 value from a SNA image: only bit 2 should be taken into account.* fixed bug in CPIR: flags weren't set correctly.* R is now increased by an interrupt.* RETI and RETN merged (RETI opcode is only distinguished by external I/O devices like Z80PIO).* HALT executed with interrupts off now aborts emulation automatically.* given up a 16k buffer to load .ROM and .SNA image files: they are now loading a bit slower, but that 16k was necessary for code.* fixes in .Z80 image loading routines.* PUSH AF is now unable to overwrite ROM space.* PUSH BC/DE/HL/IX/IY are now able to write to screen memory (and unable to overwrite ROM space): Paperboy now works.* emulate behaviour of IN 254 depending on last OUT 254.0.5---* add menu.* fixed wrong S-flag setting in OUTI and implemented OUTD, OUTDR, OUTIR, INIR, INDR.* LDDR optimized.* implemented CPI, CPD, CPDR.* memory footprint reduced from 832k to 640k (64k base + 576k high).* all CB-prefixed instructions 2 clocks faster.* implemented illegal SET n,(IX+d),r RES n,(IX+d),r RL (IX+d),r RR (IX+d),r SLA (IX+d),r SRA (IX+d),r SLL (IX+d),r SRL (IX+d),r and their IY counterparts.* added command line option -V, a number should follow specifying a divisor for the main VBL rate (e.g. -V 5 makes the emulator to execute every 5th VBL on Z80 core).* implemented emulation of Sinclair joystick 1 and 2.* bugfix in OUTI.* implemented illegal RLC (IX+d),r RRC (IX+d),r (and IY equivalents).* LDIR made faster (in certain circumstances).* relative backward branches emulation 2 clocks faster (= a bit faster loops).* emulation of each instruction with double prefix (DDCB or FDCB) is 4 clocks faster now thanks to optimized address calculation.* added VBL rate calibration depending on the Atari's speed.* added all missing OUT (C),r instructions.* changes in the source code & co., build time shortened from 13 to 10 minutes.* faster loading.* keyboard scanning much improved, many more programs react on keyboard input now.* Some Atari keys bound to more complex functions of Spectrum keyboard, as follows:- Atari Esc key is now Extended Mode key (SS+CS)- Atari Caps is Spectrum Caps (CS+2).- Atari Inverse video now works as Spectrum Inverse video (CS+4).- True video (CS+3) is Shift+Inverse.- The following characters: ,./;+*-=<> bound to respective Atari keys.- The following characters: ?:_^ bound to respective Atari keys with Shift.- Atari cursor keys (Ctrl/arrow) bound to respective Spectrum cursor keys.Note that characters which require more than one step in operating the keyboard, such as: []|\ have not been bound to the respective Atari keys and must be typed the traditional Spectrum way, e.g. | requires two steps: 1) transition to Extended Mode (CS+SS), 2) pressing CS+"S". Such an operation cannot be currently done at the emulator level.* fixed bugs in the routine which reports opcode at which the emulation was aborted.* revised all DDCB- and FDCB-prefixed instructions.* EX (SP),IX and EX (SP),IY can now write to screen memory, like EX (SP),HL.* revised code for INC/DEC (HL), (IX+d), (IY+d).* revised code for RES (IX+d), (IY+d).* revised code for SET (IX+d), (IY+d).* added RLC, RRC, RL, RR, SLA, SRA, SLL, SRL for (IX+d) and (IY+d) addressing modes.* a bit faster address calculation for DDCB- and FDCB-prefixed ops.* added LDD.* added all missing IN r,(C) instructions.* fixed (fatal) typos in ED58 and ED68 ops (illegal RETI).* faster RLC (HL) and RRC (HL).* displaying keyboard layout when HELP key is depressed.* fixed bug in LDIR which resulted in problems with display scrolling in BASIC (using e.g. LIST).* all emulated Z80 registers moved to 6502 zero page: this may cause slowdown, if the first 64k is slower than the rest of the memory.* all OUT instructions which generate sound will now use a common wavetable.* revised all CB-prefixed instructions.* fixed bug in BIT instruction: the N flag was not reset as it should be.* implemented illegal aliases to BIT r,(IX+d) and BIT r,(IY+d) instructions.* IN a,#$nn: Kempston joystick emulation optimized (10% faster now).* fixed broken wavetable in sound generation.* revised all FD-prefixed instructions.* DAA: a faster and more realistic implementation.* revised all DD-prefixed instructions.* revised all unprefixed instructions.