Current known bugs/todo list
============================

Bugs: 25 Features: 5

- 29 8237 is not working because there is no tick
- 30 conformance: mul...Failed! 10 of 192
- 31 conformance: rotate...Failed! 6 of 160
- 32 8253 does not interact properly with 8237
- 33 Feature: GUI: need a way to trigger logging
- 34 Feature: Alt+Enter does not go full screen
- 35 cannot capture mouse
- 38 after ejecting a disk we still do not report it as empty
- 39 when no disk drives are in, PCXT Turbo BIOS hangs
- 40 with non-INT13h emulation IBM PC BIOS cannot find the boot floppy
- 41 Feature: FPU instructions not implemented yet
- 48 286XT: 8bit bus operations take 6 clock cycles (including 4 Wait states)
- 49 286XT: DMA controller at 3Mhz
- 50 286XT: data-transfer bus cycles are 5 clock cycles
- 51 XT: IO takes 5 cycles per 8 bit of transfer (so 1 wait state on top of 4 cycles)
- 52 XT: DMA takes 5 cycles per 8 bit transfer
- 53 topbench benchmark screen blinks sometimes when it should not
- 56 On AT we cannot seem to read floppy drive B
- 58 RTC test fails in Checkit!
- 60 clock cycles for REP based instructions is different if there is no REP
- 61 Checkit! reports wrong Mhz
- 62 Feature: saving/restoring snapshot feature does not work yet
- 64 Feature: Need a way to take a screenshot
- 68 deal with CPL/DPL/RPL and generate proper errors
- 69 generate proper errors for task switch
- 70 FDC timing is not accurate at all
- 72 FreeDOS ODIN 7.2 has problems seeing some folders on C:
- 73 MDA is not cycle accurate
- 74 we need to use cached descriptor values more aggresively
- 75 need refresh magic HW in AT+
- 78 Feature: need IBM PCJr support

Fixed bugs/todo list
====================

- 1 topbench hangs after loading few entries from file
- 2 topbench hangs when doing timing
- 3 8253 does not work in test bios
- 4 5160 BIOS hangs after memory checkup
- 5 CGA can change mode when SDL is displaying (need lock)
- 6 CGA 160x100 mode is not supported
- 7 conformance: segpr...Failed! 4 of 48
- 8 conformance: shifts...Failed! 6 of 128
- 9 conformance: div...Failed! 53 of 272
- 10 CS:IP in case of a exception needs to be of the instruction that causes including any prefixes (REPZ/SEG:/etc)
- 11 GUI: filter is not honored
- 12 crashes when we loaded a disk that does not exist
- 13 GUI: quit does not quit the emulator
- 14 GUI: BIOS should be chosen via a path
- 15 GUI: cannot load machine configuration
- 16 GUI: reboot does not work
- 17 GUI: machine name does not mean anything
0.1
- 18 GUI: path of executable is hardcoded wrong for Win
- 19 something is wrong with 8253 as 8088mph reports wrong speed
0.2
- 20 CGA: blinking text does not work
- 21 fixed some 8018x instructions
- 22 GUI: cannot switch floppy
0.3
- 23 Ultima3 sounds does not work
- 24 BASIC loading is disabled (GUI altered too)
- 25 fixed OUT Ib, AL to have a write to memory phase
- 26 fixed an important timing bug (speed was 119%)
0.4
- 27 need to account for 1 waitstate for memory in AT systems (making it 3 bus cycles)
- 28 make_address_32 can cause GPF so we need to deal with that in ALL cases
- 46 CGA 40x25 cursor is in the wrong (vertical) position
- 57 CMOS needs a tick callback so that timer works (with proper frequency)
- 54 CGA/MDA memory needs to be its own and not in the common memory pool (disconnect them)
- 59 Jungle Hunt hangs after pressing F1 to start
- 37 incomplete 8018x support for some instructions (BOUND/IMUL/INS/OUTS/ENTER/LEAVE)
- 55 GUI: switching disk images does not 100% work
- 44 need to merge all exeptions into one handler instead of having separate for each one
- 43 UD in 186/286 needs to generate INT 6
- 42 BOUND instruction with register for second operand should generate UD
- 45 LSL/LAR need to verify if they can do their operation and set ZF accordingly
- 63 286+ stack segment exception not checked for and not generated
- 47 in some modes 8253 needs to only fire an interrupt once
- 67 Landmark AT test BIOS asserts emulator when testing EGA memory
- 36 FreeDos ODIN 7.2 shows empty C: drive
- 65 286+ task switching is not cycle accurate with respect to BIU traffic
0.5
- 76 remove all direct register writes and replace with wrapper so we can update cached descriptor
- 66 Feature: need EGA support
- 77 clock ratio between CPU and 8253 is not correct for all frequencies of CPU
0.6
- 71 Feature: add Hercules support
- 79 Feature: add multi-monitor/adapter support
