Permalink
Fetching contributors…
Cannot retrieve contributors at this time
518 lines (504 sloc) 44.8 KB
Minimig changelog
-----------------
Authors:
DW - Dennis van Weeren
JB - Jakub Bednarski
SB - Sascha Boing
AR - A.M. Robinson
TH - Till Harbaum
RK - Rok Krajnc
MJ - Mike Johnson
2016-02-20 - RK - MINIMIG - initial implementation of programmable display modes
2016-02-16 - RK - MINIMIG - OSD HRTmon enable / disable switch is working (ON - F11 acts as NMI and enters HRTmon, OFF - F11 is HELP key)
2016-02-15 - RK - MINIMIG - proper handling of CPU access to chipRAM & custom regs - CPU waits for free slot when turbo option is disabled
2016-02-15 - RK - DENISE - fixed playfield 2 color lut offset when playfield 2 has priority for OCS/ECS modes
2016-02-15 - MJ - BLITTER - some IRQ changes (unknown cause / effect)
2016-02-14 - RK - AGNUS - added support for undocumented Agnus behaviour when BPL=7 in ECS/OCS mode (fixes demos like SushiBoyz by Ghostown, Sliced&Diced by Dekadence, etc)
2016-02-14 - RK - DENISE - added support for undocumented Denise behaviour when BPL=7 in ECS/OCS mode (fixes demos like SushiBoyz by Ghostown, Sliced&Diced by Dekadence, etc)
2016-02-09 - RK - BLITTER - blitter line mode fixed (fixes demos like SushiBoyz & Sunglasses by Ghostown, Vectorize by RSi, etc)
2016-01-30 - TH - TG68 - bitfield instructions fixed, barrel shifter implemented
2016-01-30 - RK - DENISE - fixed colortable for sprites (bplxor) - fixes Alien Breed 3D (and probably many others)
2016-01-09 - RK - MIST - fixed keyboard rate
2016-01-09 - RK - MIST - kickstart ROM is also uploaded to mirror position (E0)
2015-10-24 - RK - MINIMIG - fixed reset problems & fastRAM disappearing
2015-09-21 - RK - TG68 - added CACR cache control, fixed reading CACR reg
2015-09-14 - RK - AMBER - added scanlines for non-doublescaned config
2015-09-14 - RK - AMBER - fixed dithering - both spatial & random dithering weren't working properly
2015-09-10 - RK - USERIO - disabled entering the OSD menu with DB9-connected joystick with UP+DOWN combination
2015-09-10 - RK - FIRMWARE - fixed loading of Cloanto AmigaForever encrypted ROMs
2015-09-10 - RK - TG68 - reduced the speed of the CPU core
2015-09-10 - RK - MIST - fixed PLL placement and external SDRAM clock routing, hopefully the core will be more stable
2015-09-10 - RK - MIST - fixed keyboard problems - fixes game Walker (and probably many other)
2015-09-09 - RK - MINIMIG - fixed (USB) mouse clock domain crossing, fixed application of JOYTEST data to (USB) mouse counters - fixes game Rainbow Islands cracktro (and probably many other)
2015-09-06 - RK - FIRMWARE - fixed firmware kickstart loading, re-enabled support for 256kB ROMs, added support for 1MB ROMs, added support for AmigaForever encrypted ROMs (these still don't work OK)
2015-09-06 - RK - MINIMIG - 1MB kickstart ROM support added
2015-09-05 - RK - MIST - mist firmware is now a git submodule from git@github.com:mist-devel/mist-firmware.git
2015-06-12 - RK - USERIO - chipset config is now applied on reset only
2015-06-12 - RK - MINIMIG - added turbo options for chipRAM & kickROM
2015-06-10 - RK - CACHE - updated cpu cache; working fastRAM, kickstart cache, chipRAM (non-cached)
2015-06-04 - TH - TG68 - PACK, UNPK instructions fix
2015-06-01 - RK - DENISE - another (final!) SSCAN2 fix (SH10 coincidence detection) - Fantastic Dizzy works now
2015-06-01 - RK - AGNUS - implemented sprite scandoubling (to be tested!)
2015-06-01 - RK - MIST - updated global makefile
2015-06-01 - RK - DENISE - fixed a bug in sprite scandoubler (should fix Fantastic Dizzy CD32)
2015-05-31 - RK - DENISE - another fix for playfield CLUT offsets
2015-05-31 - RK - TG68 - enabled & fixed ROM cache; proper turbochipram enable signal
2015-05-30 - TH - TG68 - partial fix for UNPK instruction (needed by Slam Tilt)
2015-05-30 - RK - DENISE - added (theoretical) delay to BPLCON4 values; fixed (big!) bug with extra_delay values when fetchmode > 0; added another fix for AGA quarter pixel scrolling (probably not completely correct!); more color fixes (wrong implementation of SWIV special feature); even more colortable fixes
2015-05-30 - RK - AGNUS - added bitplane scandoubling support
2015-05-29 - RK - USERIO - implemented proper RTL version register
2015-05-29 - RK - DENISE - implemented proper AGA bitplane scroller; fixed erroneous enabling of ham & ehb modes; fixed color problems; sprite enable/disable signal fix (Coppermaster demo & More Lemmings game)
2015-05-29 - RK - FIRMWARE - fixed boot display text position; fixed resetting boot text position when loading another core (which could be another minimig core); added proper reading of RTL version from core; added minimig core config display on boot screen; updated firmware for HRTmon, removed old ActionReplay code
2015-05-28 - RK - MINIMIG - fixed fastRAM config
2015-05-24 - RK - DENISE - more work on the bitplane display
2015-05-24 - RK - SPRITES - added sprite attach for both odd and even attach bit (ECS feature); added sprite scandoubling support, to be tested
2015-05-24 - RK - DENISE - fixed AGA colortable, bplxor implementation; fixed wrong detection of HAM & EHB modes
2015-05-06 - RK - SDRAM - rewritten sdram controller in Verilog
2015-05-03 - RK - CART - added custom registers mirror support for cart (HRTmon); updated firmware to better handle HRTmon, HRTmon loads to new location (as used in WinUAE - can use same HRTmon rom!)
2015-04-29 - RK - CIA - CIA TOD bug fixed
2015-03-18 - RK - MINIMIG - added new RGA bus address decoder logic (centralized)
2015-03-09 - RK - USERIO - OSD SPI memory write access page size updated to 24bits, this is to allow a (incompatible with previous RTL versions) simplification of the firmware sometime later
2015-02-20 - RK - MIST - initial support for writing in ini parser
2015-02-19 - RK - MIST - ini parser updated to handle comments, quotes, and last line without line end
2015-01-26 - RK - MIST - fixed scandoubler config
2015-01-23 - RK - minimig-mist AGA BETA 3
2015-01-22 - RK - MIST - added ini parser to firmware; added scandoubler enable/disable switch from mist.ini file
2014-12-08 - RK - MIST - fixed clock-domain-crossing signals for joysticks, mouse, keyboard
2014-11-30 - RK - minimig-mist AGA BETA 2
-
-
2014-10-08 - RK - CORE - all source files split into seperate modules
2014-10-07 - RK - CORE - whole minimig design upgraded to use a single clock - ~28MHz
2014-09-27 - RK - CART - cleanup, clock enable added
2014-09-25 - RK - FIRMWARE - OSD SPI protocol updated with new addressing & more bits available; for now, this change makes 'our' firmware incompatible with any other core on the MiST board
2014-09-25 - RK - MIST - ported latest version of minimig-de1 to the MiST board
2014-06-22 - RK - USERIO - added real mouse support from Chameleon minimig port
2014-06-21 - RK - USERIO - added PS/2 mouse intellimouse support
2014-04-12 - SB - DENISE - implemented sprite collision detection fix, developed by Yaqube. thanks a lot!, games Archon1, Rotor and Spaceport finally works normal
2014-03-08 - SB - DENISE - fixed detect collisions
2013-11-27 - RK - CART - initial version
2013-10-19 - SB - DENISE - fixed self-made sprite collision bug. Now YQ100818 code is working again!
2013-03-21 - RK - USERIO - more compatible right mouse & second joystick button handling; TODO tests
2013-03-21 - RK - PAULA - translated & added a new more compatible uart core written by madeho@minimig.net
2013-03-03 - RK - AMBER - cleanup
2013-02-10 - RK - AUDIO - two stage sigma-delta updated: used AMR's silence fix, added interpolator at sigma-delta input, all bits of the x3/4 input signal are used, dithering removed, two LFSR PRNGs are combined and high-pass filtered for a HP triangular PDF noise, random noise is applied directly in front of the quantizer, which helps randomize the output stream, some noise shaping (filtering) added to the error feedback signal
2013-01-17 - SB - USERIO - added POTGO write register handling (required by Asterix game)
2012-11-11 - RK - AUDIO - two-stage sigma-delta modulator added
2012-03-23 - SB - MINIMIG - fixed sprite enable signal (coppermaster demo)
2012-03-23 - SB - DENISE - fixed sprite enable signal (coppermaster demo)
2012-03-23 - AR - GARY - Added select for Akiko
2012-03-23 - AR - AKIKO - initial version
2012-02-12 - TF - MINIMIG - change sigma/delta module
2011-07-21 - SB - MINIMIG - changed '#' key scan code, thanks Chris
2011-04-24 - SB - MINIMIG - fixed CIA TOD read
2011-04-24 - SB - CIA - fixed TOD read
2011-04-11 - SB - USERIO - autofire function toggle able via capslock / led status
2011-04-11 - SB - MINIMIG - autofire function toggle able via capslock / led status
2011-04-10 - SB - MINIMIG - added readable VPOSW and VHPOSW register (fix for RSI slideshow)
2011-04-10 - SB - BEAMCOUNTER - added readable VPOSW and VHPOSW register (fix for RSI slideshow)
2011-04-04 - SB - MINIMIG - added pwm controlled power-led at "off" state and active Turbo mode (thanks Herzi for the idea)
2011-04-02 - SB - MINIMIG - added functional ciaa port b (parallel) register to let Unreal game work and some trainer store data
2011-04-02 - SB - CIA - added ciaa port b (parallel) register to let Unreal game work and some trainer store data
2011-03-08 - SB - MINIMIG - added dip and fat agnus DIWSTRT handling (fix RoboCop2)
2011-03-08 - SB - AGNUS - added DIP and FatAgnus handling of scanline 0 (fix for RoboCop2 game)
2011-03-06 - SB - USERIO - added autofire without key press & permanent fire at KP0
2011-03-06 - SB - MINIMIG - changed autofire function to handless mode
2011-01-18 - SB - AUDIO - fixed sound output, no more high pitch noise at game Gods
2010-12-22 - SB - MINIMIG - better drive step sound at 31KHz mode
2010-10-18 - SB - GARY - added special memory config like in A500 Rev.6 with 512kb + 512kb of memory
2010-08-16 - JB - USERIO - joystick emulation
2010-08-16 - JB - USERIO - autofire, lmb & rmb emulation
2010-08-15 - JB - MINIMIG - added joystick emulation
2010-08-15 - JB - GARY - clean-up
2010-08-15 - JB - CIA - added joystick emulation
2010-08-14 - JB - FLOPPY - set BYTEREADY of DSKBYTR (required by Kick Off 2 loader)
2010-08-10 - JB - GAYLE - improved BSY signal handling
2010-08-05 - JB - MINIMIG - added cache for the CPU
2010-07-28 - JB - MINIMIG - added vsync for the MCU
2010-07-27 - JB - MINIMIG - fixed isue with external reset
2010-06-29 - JB - AGNUS - added more magic to ddf logic
2010-06-17 - JB - SPRITES - improved OCS sprite attach mode
2010-06-16 - JB - COPPER - ECS/OCS CDANG behaviour implemented
2010-06-15 - JB - AUDIO - updated description
2010-05-30 - JB - MINIMIG - htotal changed
2010-05-30 - JB - AMBER - htotal changed
2010-04-22 - JB - DENISE - ECS border blank implemented
2010-04-14 - JB - BEAMCOUNTER - A1000 compatible VBL interrupt generation
2010-04-13 - JB - GAYLE - changed sector buffer size
2010-04-13 - JB - AGNUS - undocumented 7 bitplane mode implemented
2010-04-12 - JB - FLOPPY - implemented work-around for dsksync interrupt request
2010-01-19 - JB - BEAMCOUNTER - added vertical interrupt request signal for Paula
2009-12-28 - JB - CIA - added serial port register to CIA B
2009-12-27 - JB - AGNUS - OCS Denise compatible display window generation
2009-12-26 - JB - FLOPPY - step enable
2009-12-20 - JB - DENISE - DIWHIGH is written only in ECS mode
2009-12-20 - JB - AGNUS - ECS sprite features disabled in OCS mode
2009-12-19 - JB - BLITTER - ECS extensions available only with ECS chipset selected
2009-12-18 - JB - USERIO - clean-up
2009-12-16 - JB - MINIMIG - improved bitplane dma timing, Denise id is selectable
2009-12-16 - JB - DENISE - added ECS enable input (only chip id is affected)
2009-12-16 - JB - AGNUS - bitplane dmacon enable delayed
2009-12-15 - JB - MINIMIG - improved blitter data flow
2009-12-15 - JB - BLITTER - fixed channel B data flow
2009-11-18 - JB - GAYLE - changed sector buffer size
2009-11-14 - JB - PAULA - added 28 MHz clock input for sigma-delta modulator
2009-11-14 - JB - FLOPPY - changed DSKSYNC reset value (Kick 1.3 doesn't initialize this register after reset), reduced FIFO size (to save some block rams)
2009-11-14 - JB - AUDIO - modified audio state machine to be more cycle-exact with its real counterpart, sigma-delta modulator is clocked at 28 MHz
2009-11-14 - JB - AGNUS - changed audio DMA engine (first DMA cycle reloads pointer register), changed floppy DMA allocation in CPU turbo mode (all alternative dma slots may be used if needed), changes to blitter bus sharing logic, some changes to bitplane DMA (better OCS handling), some signal names changed
2009-10-07 - JB - COPPER - implementation of blocked $E1 cycles, modified copper restart
2009-10-07 - JB - BITPLANES - pixel pipe line extra delay (alligment of bitplane data and copper colour change)
2009-10-04 - JB - DENISE - implemented DIWHIGH register, pixel pipeline moved to clk28m domain, implemented super hires, changed ID to ECS
2009-09-01 - JB - GARY - fixed sel_kick
2009-08-31 - JB - AMBER - scanlines synthesis option
2009-08-17 - JB - USERIO - OSD position moved right
2009-08-17 - JB - SYSCONTROL - reset generator modification
2009-08-16 - JB - MINIMIG - Action Replay problem fixed (thanks Sascha)
2009-08-11 - JB - USERIO - hdd_ena replaced with ide_config
2009-08-11 - JB - MINIMIG - support for second hardfile
2009-08-11 - JB - GAYLE - hdd_ena enables Master & Slave drives
2009-07-21 - JB - FLOPPY - WORDEQUAL in DSKBYTR register is always set now
2009-07-18 - JB - USERIO - change of memory_config takes effect after reset
2009-07-10 - JB - PAULA - implementation of intreq[14] (Unreal needs it)
2009-07-09 - JB - CIA - reading of port B of CIA A ($BFE101) returns all ones ($FF)
2009-07-01 - JB - MINIMIG - enabling of ddfstrt/ddfstop ECS extension bits is configurable
2009-06-17 - JB - CIA - timer A&B reset to 0xFFFF
2009-06-12 - JB - MINIMIG - CIA's SDR register returns written value
2009-06-12 - JB - CIA - sdr returns written value
2009-06-11 - JB - MINIMIG - fixed serial port divider
2009-06-10 - JB - MINIMIG - fixed non-interlaced frames to be long
2009-06-10 - JB - BEAMCOUNTER - in non-interlace mode all frames are long (313 lines for PAL)
2009-06-09 - JB - MINIMIG - fixed disk index pulses to 5 Hz (300 RPM)
2009-05-29 - JB - MINIMIG - changed blitter timing to be more cycle exact
2009-05-29 - JB - COPPER - dma_bpl replaced with dma_ena
2009-05-29 - JB - BLITTER - changed enable signal to be more cycle exact, removed bblck as not needed anymore, there is still incopatibility when C channel is selected without D: extra idle cycle is inserted
2009-05-25 - JB - GARY - ram, cpu and custom chips bus multiplexer
2009-05-25 - JB - AGNUS - signal 'buswr' renamed to 'dbwe', signal 'bus' renamed to 'dbr', removed signal 'buspri'
2009-05-24 - JB - USERIO - clean-up & renaming
2009-05-24 - JB - SPRITES - clean-up & renaming
2009-05-24 - JB - PAULA - clean-up & renaming
2009-05-24 - JB - MINIMIG - clean-up & renaming
2009-05-24 - JB - GAYLE - clean-up & renaming
2009-05-24 - JB - GARY - clean-up & renaming
2009-05-24 - JB - FLOPPY - clean-up & renaming
2009-05-24 - JB - DENISE - clean-up & renaming
2009-05-24 - JB - COPPER - clean-up & renaming
2009-05-24 - JB - CIA - clean-up & renaming
2009-05-24 - JB - BLITTER - clean-up & renaming
2009-05-24 - JB - BITPLANES - clean-up & renaming
2009-05-24 - JB - BEAMCOUNTER - clean-up & renaming
2009-05-24 - JB - AUDIO - clean-up & renaming
2009-05-24 - JB - AMBER - clean-up & renaming
2009-05-24 - JB - AGNUS - clean-up & renaming
2009-05-23 - JB - MINIMIG - more cycle exact CPU bus timing during CIA access
2009-05-23 - JB - GARY - better timing model for CIA interface
2009-05-17 - JB - MINIMIG - hires OSD
2009-05-08 - JB - USERIO - fixed problem with activation of OSD menu using UP+DOWN joystick signals
2009-04-21 - JB - MINIMIG - code clean up, thanks to Loriano, Darrin, Richard, Edwin, Sascha, Peter and others for their help, support, ideas, testing, bug reports and feature requests
2009-04-05 - JB - PAULA - code clean-up
2009-04-05 - JB - FLOPPY - code clean-up
2009-03-26 - JB - AUDIO - audio dma requests are latched and cleared at the start of every scan line, seemd to cure Agony problem, Forgotten Worlds freezes at game intro screen due to missed audio irq
2009-03-21 - JB - USERIO - disable keyboard until all keys are released
2009-03-17 - JB - AUDIO - audio FSM rewritten to comply more exactly with HRM state diagram, Agony still has problems
2009-03-13 - JB - SYSCONTROL - shorter reset
2009-03-08 - JB - PAULA - removed horbeam counter and sol, added strhor
2009-03-08 - JB - DENISE - removed sof and sol inputs as they are no longer used
2009-03-08 - JB - BEAMCOUNTER - clean-up
2009-03-08 - JB - AUDIO - horbeam removed, strhor signal added (cures problems with freezing of some games), corrupted Agony title song
2009-02-10 - JB - USERIO - sampling of joystick signals using sof (acting as simple debouncing filter)
2009-02-09 - JB - BITPLANES - added hpos for proper horizontal scroll of non-aligned dma fetches
2009-02-01 - JB - CIA - osd_ctrl[] is 8 bit wide
2009-01-26 - JB - SPRITES - cleanup, added sprena signal
2009-01-16 - JB - COPPER - clean-up
2009-01-09 - JB - DENISE - added sprena signal (disables display of sprites until BPL1DAT is written)
2009-01-08 - JB - PAULA - added audio_dmal, audio_dmas
2009-01-08 - JB - AGNUS - added audio_dmal, audio_dmas
2008-12-31 - JB - GAYLE - added hdd enable
2008-12-29 - JB - CIA - more sophisticated implementation of serial port transmit interrupt (fixes problem with keyboard in Citadel), fixed reloading of Timer A/B when writing THI in stop mode
2008-12-27 - JB - USERIO - added hdd_ena output
2008-12-27 - JB - BITPLANES - addapted playfield horizontal scrolling
2008-12-27 - JB - AMBER - clean-up
2008-12-20 - JB - AUDIO - changed DMA slot allocation
2008-12-12 - JB - USERIO - added scanline outputs
2008-12-12 - JB - AMBER - useless scanline effect implemented
2008-11-24 - JB - COPPER - clean-up, wait/skip free cycles reimplementation, although I spend a lot of time trying to figure out real behaviour of Amiga hardware this solution is not complete, more cycle-exact, dma_bpl implementation, WAIT and SKIP states no longer keep CPU and blitter off the bus
2008-11-23 - JB - DENISE - playfield collision detection fix, changed horizontal counter counting range (fixes problems with overscan: Stardust, Forgoten Worlds), added strhor signal to synchronize local horizontal counter
2008-11-14 - JB - MINIMIG - ram interface synchronous with clk28m, 70ns access cycle
2008-10-30 - JB - GAYLE - write support added
2008-10-28 - JB - FLOPPY - further hdd implementation
2008-10-20 - JB - BLITTER - changed name of horbeam[0] to bltena
2008-10-18 - JB - AGNUS - fast blitter mode
2008-10-15 - JB - GARY - signal name change cpuok -> dbr
2008-10-12 - JB - USERIO - added floppy_config and chipset_config outputs
2008-10-12 - JB - PAULA - source clean-up
2008-10-12 - JB - AUDIO - code clean-up
2008-10-10 - JB - GAYLE - multiple sector transfer supported: works ok, sequential transfers with direct spi read and 28MHz CPU from 400 to 520 KB/s, ARM firmare seekfile function very slow: seeking from start to 20MB takes 144 ms (some software improvements required)
2008-10-09 - JB - GAYLE - working identify device command implemented (hdtoolbox detects our drive), read command reads data from hardfile (fixed size and name, only one sector read size supported, workbench sees hardfile partition)
2008-10-08 - JB - GAYLE - interrupt controller implemented, kickstart boots
2008-10-07 - JB - FLOPPY - ide command request implementation
2008-10-06 - JB - GAYLE - initial version
2008-10-06 - JB - GARY - added decoders for IDE and GAYLE register range
2008-09-30 - JB - USERIO - removed user output
2008-09-30 - JB - PAULA - removed user disk control input
2008-09-24 - JB - PAULA - code clean-up, added support for floppy _sel[3:1] signals
2008-09-24 - JB - MINIMIG - added support for floppy _sel[3:1] signals
2008-09-24 - JB - FLOPPY - incompatibility found: _READY signal should respond to _SELx even when the motor is off, added logic for four floppy drives
2008-09-23 - JB - SRAM_BRIDGE - generation of write strobes moved to clk28m clock domain
2008-09-23 - JB - MINIMIG - added c1 and c3 clock anable signals, adapted sram bridge to use only clk28m clock
2008-09-22 - JB - MINIMIG - code clean-up
2008-07-28 - JB - USERIO - added JOYTEST register to make it compatible with ALPHA1/SIRIAX flashtro/trainer
2008-07-28 - JB - CIA - scroll lock led as disk activity led
2008-07-17 - JB - MINIMIG - Thanks to: Dennis for his great Minimig, Loriano for impressive enclosure, Darrin and Oscar for their ideas, support and help, Toni for his indispensable help and logic analyzer (and WinUAE :-)
2008-07-17 - JB - MINIMIG - scan doubler with vertical and horizontal interpolation, transparent osd window, selected osd line highlight, osd control by joystick (up and down pressed simultaneously invoke menu), memory configuration from osd (512KB chip, 1MB chip, 512KB chip/512KB slow, 1MB chip/512KB slow), video interpolation filter configuration from osd (vertical and horizontal), user reset accessible from osd, user reset to bootloader (kickstart reloading), new bootloader (text messages during kickstart loading), ECS blittter, PAL/NTSC selection, modified display dma engine (better compatibility), modified sprite dma engine (better compatibility), modified copper timing (better compatibility), modified floppy interface (better read and write support), Action Replay III module for debugging (takes 512KB memory bank)
2008-07-17 - JB - FLOPPY - modified floppy interface for better read handling and write support, spi interface clocked by SPI clock
2008-07-17 - JB - COPPER - real Amiga timing behaviour (thanks to Toni Wilen for help)
2008-07-17 - JB - AGNUS - modified display dma engine to be more compatible, moved beamcounters to separate module, heavily modified sprite dma engine
2008-07-14 - JB - SPRITES - swapped shifta and shiftb in serialized output (fix for Zool2: copper writes to SPRxDATx registers)
2008-07-11 - JB - SYSCONTROL - reset to bootloader
2008-07-08 - JB - DENISE - added hires output (for scandoubler), changed Denise ID (sometimes Show Config detected wrong chip type)
2008-07-08 - JB - COPPER - clean-up
2008-07-08 - JB - BLITTER - clean up
2008-06-17 - JB - USERIO - added osd control by joy2, spi8 rewritten to use spi clock, added highlight (inversion) of selected osd line, added user reset and reset to bootloader, added memory and interpolation filters configuration
2008-04-25 - JB - CIA - added transmit interrupt for serial port
2008-04-02 - JB - CIA - separate Timer A and Timer B descriptions (they differ a little), one-shot mode of Timer A/B sets START bit in control register, implemented Timer B counting mode of Timer A underflows
2008-03-25 - JB - CIA - osd_ctrl[] is 6 bits/keys (Ctrl+Break and PrtScr keys added), verilog 2001 style declaration
2008-03-14 - JB - BEAMCOUNTER - moving beamcounter to a separate file, pal/ntsc switching, NTSC doesn't use short/long line toggling,all lines are short like in PAL (227 CCKs), composite blanking use hblank which is combined with vblank
2008-03-03 - JB - COPPER - ECS copper danger behaviour
2008-03-03 - JB - BLITTER - added BLTCON0L, BLTSIZH and BLTSIZV
2008-02-28 - JB - AMBER - horizontal and vertical interpolation
2008-02-26 - JB - AMBER - synchronous 28 MHz version
2008-02-02 - JB - AMBER - hfilter/vfilter inputs added, unused inputs removed
2007-07-03 - DW - PAULA - moved interrupt controller and uart to this file to reduce number of sourcefiles
2007-06-24 - DW - MINIMIG - moved cpu/sram/clock and syscontrol to this file to reduce number of source files
2007-02-11 - DW - PS2_KEYBOARD - reset is now ctrl-alt-alt (as in Amiga OS4) instead of ctrl-lgui-rgui
2007-01-01 - DW - PS2_KEYBOARD - added extra key for on-screen-display control
2007-01-01 - DW - CIA - osd_ctrl[] is now 4 bits/keys
2006-12-30 - DW - USERIO - cleaned up osd module, added osd_ctrl input
2006-12-29 - DW - USERIO - fixed some bugs in osd module
2006-12-29 - DW - AMBER - added support for OSD overlay
2006-12-28 - DW - USERIO - more osd display work done
2006-12-28 - DW - FLOPPY - spi data out is now low when not addressed to allow multiplexing with multiple spi devices
2006-12-27 - DW - USERIO - added joystick port 1 and automatic joystick/mouse switch, started coding osd display
2006-12-27 - DW - MINIMIG - updated code to new ciab
2006-12-27 - DW - CIA - ciab cleanup
2006-12-11 - DW - MINIMIG - updated code to new ciaa
2006-12-11 - DW - CIA - ciaa cleanup
2006-12-05 - DW - PS2_KEYBOARD - more work; cleaning up, optimizing, added on-screen-display control
2006-12-05 - DW - CIA - added keyboard acknowledge
2006-12-04 - DW - PS2_KEYBOARD - added keyack signal
2006-12-03 - DW - MINIMIG - added dimming powerled
2006-11-29 - DW - PS2_KEYBOARD - keymap is now blockram, saves almost 80 slices!
2006-11-27 - DW - MINIMIG - code adapted to new synchronous bootrom
2006-11-22 - DW - MINIMIG - added keyboard reset
2006-11-22 - DW - CIA - added keyboard reset
2006-11-21 - DW - PS2_KEYBOARD - finished PS/2 state machine, added keymap
2006-11-21 - DW - CIA - splitted in seperate ciaa and ciab, added ps2 keyboard module to ciaa
2006-11-20 - DW - PS2_KEYBOARD - more coding
2006-11-19 - DW - PS2_KEYBOARD - started coding
2006-11-17 - DW - MINIMIG - added address decoding for Minimig rev1.0 ram
2006-11-17 - DW - GARY - removed debugging and added decode for $C0000 ram
2006-11-12 - DW - MINIMIG - started porting code to Minimig rev1.0 board
2006-11-12 - DW - GARY - debugging for new Minimig rev1.0 board
2006-07-07 - DW - BLITTER - added some comments
2006-02-22 - DW - AUDIO - fixed dma interrupt timing, Turrican-3 theme now plays correct!
2006-02-21 - DW - AUDIO - improved audio state machine
2006-02-19 - DW - MINIMIG - improved indx disk interrupt timing, cia timers now connect to sol/sof
2006-02-19 - DW - AGNUS - again improved blitter timing, this is an even more compatible solution
2006-02-14 - DW - MINIMIG - code clean up, added fastchip input
2006-02-14 - DW - BLITTER - improved bblck table
2006-02-14 - DW - AGNUS - again improved blitter timing, this seems the most compatible solution for now..
2006-02-06 - DW - USERIO - cleaned up code, added user output
2006-02-06 - DW - PAULA - added user disk control input
2006-02-06 - DW - FLOPPY - added user disk control input
2006-02-05 - DW - USERIO - unused buttons of joystick port 2 are now high
2006-01-25 - DW - BLITTER - added bblck signal
2006-01-25 - DW - AGNUS - improved blitter nasty timing
2006-01-24 - DW - MINIMIG - cia's now count positive _hsync/_vsync transitions
2006-01-23 - DW - MINIMIG - added fastblit input
2006-01-23 - DW - AGNUS - added fastblitter enable input
2006-01-22 - DW - MINIMIG - removed _csync port from agnus
2006-01-22 - DW - FLOPPY - removed support for track 80-127 again
2006-01-22 - DW - DENISE - added vertical window clipping
2006-01-22 - DW - BLITTER - fixed bug in special line draw mode
2006-01-22 - DW - AGNUS - removed composite sync output, added ddfstrt/ddfstop HW limits
2006-01-15 - DW - MINIMIG - added syscontrol module to handle automatic boot sequence
2006-01-15 - DW - GARY - fixed sensitivity list
2006-01-15 - DW - FLOPPY - added support for track 80-127 (used for loading kickstart)
2006-01-11 - DW - MINIMIG - added Amber
2006-01-11 - DW - DENISE - added blanking circuit
2006-01-11 - DW - AMBER - done lot's of work, Amber is now finished
2006-01-11 - DW - AGNUS - removed ability to write beam counters
2006-01-10 - DW - AMBER - first serious version
2006-01-07 - DW - PAULA - added dmas for disk controller
2006-01-07 - DW - AUDIO - cleaned up code
2006-01-07 - DW - AGNUS - also added dmas to disk dma engine
2006-01-06 - DW - AUDIO - experimented some more with DAC and decided to leave it as it is for now
2006-01-04 - DW - AUDIO - experimented with DAC
2006-01-03 - DW - PAULA - added dmas to avoid interference with copper cycles
2006-01-03 - DW - MINIMIG - added dmas to avoid interference with copper cycles
2006-01-03 - DW - AUDIO - added dmas to avoid interference with copper cycles
2006-01-03 - DW - AGNUS - added dmas to avoid interference with copper cycles
2006-01-02 - DW - AUDIO - fixed last state
2006-01-01 - DW - AUDIO - we are having OK sound in dma mode now
2005-12-29 - DW - AUDIO - done lots of work
2005-12-29 - DW - AGNUS - rewritten audio dma engine
2005-12-28 - DW - PAULA - added audio module
2005-12-28 - DW - AUDIO - done lots of work
2005-12-28 - DW - AGNUS - fixed audio dma engine
2005-12-27 - DW - PAULA - cleaned up code
2005-12-27 - DW - MINIMIG - added dskindx interrupt
2005-12-27 - DW - FLOPPY - cleaned up code, this is it for now
2005-12-27 - DW - AUDIO - started coding
2005-12-27 - DW - AGNUS - added audio dma engine
2005-12-26 - DW - COPPER - added exception for last cycle of horizontal line, this cycle is not used by copper
2005-12-26 - DW - AGNUS - fixed buspri output, changed blitter nasty mode altogether, it is now not according to the HRM, but at least this solution seems to work for most games/demos
2005-12-25 - DW - GARY - changed blitter nasty handling
2005-12-21 - DW - MINIMIG - reworked code to use new style gary module
2005-12-21 - DW - GARY - done more coding
2005-12-21 - DW - CIA - added rd input
2005-12-21 - DW - AGNUS - added rd,hwr and lwr inputs, added bus,buswr and buspri outputs
2005-12-20 - DW - GARY - started coding
2005-12-14 - DW - AGNUS - fixed some sensitivity lists
2005-12-13 - DW - PAULA - enable syncword interrupt
2005-12-12 - DW - FLOPPY - fixed major bug, due error in statemachine, multiple interrupts were requested after a DMA transfer, this could lock up the whole machine, enable line disconnected --> this module still needs a lot of work
2005-12-11 - DW - PAULA - disable syncword interrupt
2005-12-11 - DW - FLOPPY - added dout output enable to allow SPI bus multiplexing
2005-12-10 - DW - MINIMIG - done some experimentation to find floppy bug
2005-12-10 - DW - FLOPPY - fixed some more bugs
2005-12-09 - DW - FLOPPY - fixed dsksync handling, added protection against stepping beyond track limits
2005-12-07 - DW - COPPER - added dummy cycle after copper wakeup, this is needed for copperlists that wait for vertical beamcounter rollover ($FFDF,FFFE), the dummy cycle is indicated by making both selins and selreg high
2005-12-04 - DW - FLOPPY - fixed bug in fifo empty signalling
2005-12-04 - DW - AGNUS - added magic mystery logic to handle ddfstrt/ddfstop
2005-12-02 - DW - FLOPPY - removed dma abort function
2005-11-27 - DW - PAULA - den is now active low (_den), some typo's fixed
2005-11-27 - DW - FLOPPY - den and sden are now active low (_den and _sden), fixed bug in parallel/serial converter, fixed more bugs
2005-11-22 - DW - USERIO - added joystick 1
2005-11-22 - DW - MINIMIG - adapted to new add-on develop board, added joystick 1 port
2005-11-21 - DW - PAULA - added floppy controller, added ADKCON/ADCONR registers, added local horbeam counter
2005-11-21 - DW - MINIMIG - added some signals to handle floppy
2005-11-21 - DW - FLOPPY - cleaned up code a bit
2005-11-20 - DW - FLOPPY - finished core floppy disk interface, added disk interrupts, added floppy control signal emulation
2005-11-19 - DW - FLOPPY - added wordsync logic
2005-11-14 - DW - FLOPPY - done more work
2005-11-13 - DW - FLOPPY - modified fifo to use block ram, done lots of work
2005-11-08 - DW - MINIMIG - fixed typo in instantiation of Paula
2005-10-24 - DW - FLOPPY - done lots of work
2005-10-23 - DW - PAULA - added dmal signal, added paula part of DMACON
2005-10-23 - DW - MINIMIG - added dmal signal wire
2005-10-23 - DW - FLOPPY - started coding
2005-10-23 - DW - AGNUS - added dmal signal, added disk dma engine
2005-10-21 - DW - AGNUS - fixed bug in disk dma engine, DSKDATR and DSKDAT addresses were swapped
2005-10-19 - DW - PAULA - removed cck (color clock enable) input, removed intb signal, added sof signal
2005-10-19 - DW - DENISE - code now uses sol signal to synchronize local beam counter
2005-10-19 - DW - COPPER - replaced vertb (vertical blank) signal by sof (start of frame)
2005-10-19 - DW - AGNUS - removed burst clock and cck (color clock enable) outputs, removed hcres,vertb and intb outputs, added sol,sof and int3 outputs, adapted code to use new signals
2005-10-17 - DW - USERIO - added proper reset for mouse buttons/counters ,improved mouse startup timing
2005-10-17 - DW - SPRITES - sprites were displayed one pixel too early, fixed.
2005-10-17 - DW - BLITTER - fixed typo in sensitivity list of always block
2005-10-16 - DW - USERIO - started coding
2005-10-16 - DW - MINIMIG - added user IO module
2005-10-02 - DW - SPRITES - sprites are now attached if odd,even or both sprites SPRXCTL bit 7 is set
2005-10-02 - DW - DENISE - fixed bit 15 of CLXDAT high
2005-10-02 - DW - COPPER - modified skip instruction to only skip MOVE instructions.
2005-10-02 - DW - BLITTER - special line draw mode added (single bit per horizontal line), this completes the blitter (but some bugs may still remain...)
2005-09-28 - DW - BLITTER - line drawing in octant 1,2,5,6 now works too!
2005-09-27 - DW - BLITTER - fixed problem in linemode with dma/channel D modulo: it seems like the real blitter uses only C modulo for channel C and D during linemode,same for USEC/USED, sign is taken from bit 15 of pointer A,NOT bit 20! -->fixed, line drawing in octant 0,3,4,7 now works!
2005-09-25 - DW - BLITTER - complete redesign of controller logic, added new linemode logic for all octants
2005-09-24 - DW - COPPER - fixed bug, when an illegal register is loaded by MOVE, the copper must halt until the next strobe or vertical blank, the copper now does this properly
2005-09-23 - DW - AGNUS - moved VPOSR/VHPOSR handling to beamcounter module, added VPOS/VHPOSW registers
2005-09-21 - DW - AGNUS - added copper disable input for testing
2005-09-20 - DW - BLITTER - testing
2005-09-20 - DW - AGNUS - testing
2005-09-19 - DW - BLITTER - fixed bugs in line mode state machine and it begins to start working..
2005-09-18 - DW - BLITTER - added sign bit handling for line mode, redesigned address pointer ALU, adapted state machine to use new style ALU codes, added experimental line mode for octant 0,3,4,7
2005-09-18 - DW - AGNUS - removed ersy support, this seems to cure part of the kickstart 1.2 problems
2005-09-14 - DW - BLITTER - fixed bug in channel A masking logic when doing 1 word wide blits, (and subsequently found another error in the Hardware Reference Manual)
2005-09-13 - DW - MINIMIG - added 4bit (per color) video output
2005-09-11 - DW - MINIMIG - added 2meg addressing for Agnus
2005-09-11 - DW - COPPER - added proper reset for copper location registers
2005-09-11 - DW - AGNUS - testing
2005-09-06 - DW - BLITTER - restored state machine,we should now have a working blitter (normal mode), fixed bug,channel B preload didn't work
2005-09-05 - DW - BLITTER - fixed bug in bltaddress module, -modified state machine start of blit handling
2005-09-05 - DW - AGNUS - did some dma cycle allocation testing,
2005-09-04 - DW - PAULA - added blitter finished interrupt
2005-09-04 - DW - MINIMIG - added blitter finished interrupt
2005-09-04 - DW - BLITTER - added state machine for normal blitter mode, added data output gate in channel D (needed for integration into Agnus)
2005-09-04 - DW - AGNUS - added blitter finished interrupt, added blitter
2005-08-31 - DW - BLITTER - blitsize is now decremented automatically during channel D cycle, added delayed version for lwt called lwtd (needed for pipelining)
2005-08-29 - DW - BLITTER - added blitter zero detect, added logic for special line mode to channel D
2005-08-28 - DW - BLITTER - redesigned address generator module, started coding of main state machine
2005-08-24 - DW - BLITTER - done some cleanup
2005-08-23 - DW - BLITTER - done more work, added blitsize counter
2005-08-21 - DW - BLITTER - added proper masking for A channel, added fill logic and D destination channel, added normal/line mode control logic, added address generator but it needs more work to reduce slices
2005-08-19 - DW - BLITTER - added C source channel, added minterm function generator
2005-08-16 - DW - BLITTER - done more coding
2005-08-14 - DW - BLITTER - started coding
2005-08-07 - DW - MINIMIG - Jahoeee!! kickstart doesn't guru anymore but 'clicks' the floppy drive !, the guru's were caused by spurious writes to ram which is fixed now in the sram controller, unfortunately still no insert workbench screen but that may be caused by the missing blitter
2005-08-07 - DW - DENISE - added deniseid register
2005-08-07 - DW - AGNUS - added ersy bit, if enabled the beamcounters stop counting, bit 11 and 12 of dmacon are now also implemented
2005-07-31 - DW - AGNUS - fixed bbusy to 1 as it is not yet implemented
2005-07-20 - DW - MINIMIG - still experimenting..
2005-07-20 - DW - AGNUS - changed phase of cpu clock back again, it was not the problem..
2005-07-19 - DW - AGNUS - changed phase of cpu clock in an attempt to solve kickstart boot problem
2005-07-18 - DW - MINIMIG - experimented to get kickstart running
2005-07-17 - DW - MINIMIG - connected second ram bank to hold kickstart rom, added ovl (kickstart overlay) and boot (bootrom overlay) signals, wired cia in/out ports more correctly, wired vsync/hsync to cia's
2005-07-17 - DW - CIA - added pull-up simulation on I/O ports
2005-06-29 - DW - DENISE - added collision detection, Denise is now complete! (but untested), (later this day) Denise works! (hires,interlaced,playfield,sprites)
2005-06-28 - DW - MINIMIG - done some experimentation to solve logic loop in Agnus
2005-06-28 - DW - DENISE - added hold and modify mode, added delay register and video multiplexers, added video output register
2005-06-28 - DW - AGNUS - delayed horizontal sync/blanking by 2 low res pixels to compensate for pipelining delay in Denise
2005-06-27 - DW - DENISE - added main priority logic (sprites vs playfields)
2005-06-22 - DW - DENISE - done more work on completing denise
2005-06-22 - DW - BITPLANES - moved playfield engine / priority logic to seperate module
2005-06-21 - DW - SPRITES - changed sprite priority logic and nsprite output
2005-06-21 - DW - DENISE - done more work on integrating sprites module
2005-06-12 - DW - SPRITES - started coding, first finished version
2005-06-12 - DW - DENISE - started integrating sprites module
2005-06-12 - DW - AGNUS - first finished version of sprite dma engine, integrated sprite dma engine into agnus
2005-06-08 - DW - AGNUS - done more work on sprite dma engine
2005-06-07 - DW - AGNUS - done work on sprite dma engine
2005-06-06 - DW - AGNUS - started coding of sprite dma engine, cleaned up code a bit (comments, spaces between lines and so on)
2005-05-31 - DW - AGNUS - added support for negative modulo in bitplane dma engine, integrated copper better
2005-05-29 - DW - COPPER - added blitter finished disable logic, added copper danger/address range check logic, added controlling state machine, adapted to use reqdma/ackdma model, first finished version
2005-05-29 - DW - AGNUS - added copper but its needs some more work to be integrated properly
2005-05-25 - DW - COPPER - added beam counter compare logic
2005-05-24 - DW - COPPER - started coding (created all user accessible registers)
2005-05-22 - DW - DENISE - added diwstrt/diwstop
2005-05-22 - DW - BITPLANES - fixed bug in dual playfield mode when both playfields where transparant
2005-05-22 - DW - AGNUS - changed name of diwstrt/stop to vdiwstrt/stop to make code clearer
2005-05-18 - DW - MINIMIG - removed interlaced top input pin
2005-05-18 - DW - AGNUS - fixed hires bitplane data fetch, interlaced is now selected through bplcon0
2005-05-17 - DW - AGNUS - fixed bug in bpldma_engine, modulo was not added right
2005-05-16 - DW - BITPLANES - fixed hires scrolling, now you can fetch 2 words early
2005-05-15 - DW - MINIMIG - added denise, connected vertb (vertical blank intterupt) to int3 input of paula
2005-05-15 - DW - DENISE - added local beamcounter, added bitplanes module, added color registers, first experimental version
2005-05-15 - DW - BITPLANES - first finished version
2005-05-15 - DW - AGNUS - added horbeam reset output and start of vertical blank interrupt output, fixed small bug in bpldma_engine, changed horizontal sync/blank timing so image is centered on screen, made some changes to interlaced vertical sync timing
2005-05-11 - DW - DENISE - started coding
2005-05-11 - DW - BITPLANES - started coding
2005-05-05 - DW - MINIMIG - made preparations for dma (bus multiplexers between agnus and cpu)
2005-05-05 - DW - AGNUS - completed first version of bitplane dma engine (will it work ?), adapted code for bitplane dma engine
2005-05-02 - DW - AGNUS - moved beam counter to seperate module, done work on bitplane dma engine
2005-04-26 - DW - AGNUS - continued work on beam counters
2005-04-25 - DW - AGNUS - continued work on beam counters
2005-04-24 - DW - AGNUS - adapted to new 7.09 MHz bus clock, added more complete dmaslot controller
2005-04-19 - DW - MINIMIG - bootrom is now 2Kbyte large
2005-04-18 - DW - MINIMIG - added second synchronisation latch for mreset
2005-04-17 - DW - CIA - even better reset behaviour for timer D and timers A and B
2005-04-13 - DW - MINIMIG - _foe and _loe are now made with clocks driving FF's, sram_bridge now also gets .clk(clk)
2005-04-11 - DW - MINIMIG - adapted top to cleaned up address decoder, connected cia's to .clk(~qclk) and .tick(e) for testing
2005-04-11 - DW - CIA - removed rd again due to change in address decoder, better reset behaviour for timer D
2005-04-11 - DW - AGNUS - removed rd,hwr and lwr signals due to change in address decoder
2005-04-10 - DW - MINIMIG - added cia's, verified timers a/b and I/O ports
2005-04-10 - DW - CIA - added clock synchronisation latch on input ports, added rd (read) input to detect valid bus states
2005-04-10 - DW - AGNUS - added real clock generator
2005-04-06 - DW - CIA - added I/O ports, fixed small bug in timerab state machine
2005-04-05 - DW - CIA - simplified state machine of timerab, improved timing of timer-reload of timerab, cleaned up timer d, moved intterupt part to seperate module, created nice central address decoder
2005-04-03 - DW - CIA - added timers A,B and D
2005-03-30 - DW - CIA - started coding, intterupt description finished
2005-03-27 - DW - AGNUS - fixed bug in regadress generator, adress was not set to idle if chip bus was idle (hwr,lwr and rd low)
2005-03-20 - DW - AGNUS - fixed reg_address idle state, more reliable 3-state timing
2005-03-19 - DW - PAULA - added interupt controller and uart
2005-03-19 - DW - MINIMIG - started coding
2005-03-19 - DW - AGNUS - first serious version, added clock generator
2005-03-06 - DW - PAULA - started coding
2005-01-07 - DW - FLOPPY - added dmas