The online help indicates that the Watchdog peripheral is simulated for the LPC1788 but it doesn't appear in the Peripherals menu and when the watchdog is accessed the following errors occur:
*** error 65: access violation at 0x40000000 : no 'read' permission *** error 65: access violation at 0x40000004 : no 'write' permission *** error 65: access violation at 0x40000000 : no 'write' permission *** error 65: access violation at 0x40000008 : no 'write' permission
The correct DLLs and parameters are selected in the Debug options for the project, and other peripheral simulation works (e.g. timers, GPIO, UART, PLL, etc.)
Is it known not to work or is there a trick/update to get Watchdog simulation for LPC1788 working?
Unfortunately, the LPC177x and LPC178x devices are not defined in our simulation database on the webserver. Because of this, you see the sentence "Simulation for this device is provided by the default peripheral simulation driver. Complete peripheral simulation is not available and is not planned to be implemented by ARM." on page http://www.keil.com/dd/chip/5325.htm. In this case, the default driver means a LPC1768 where we have the simulation of the Watchdog timer. That's why it is listed on our webpage.
We actually have a simulation for most LPC177x and LPC178x devices but not for all peripherals. The Watchdog timer for LPC177x and LPC178x devices was never implemented and it is not identical to the LPC175x and LPC176x because it is a windowed-WDT. So in this case you need to map the WDT register area to avoid the 'access violations' or you remove all accesses to the WDT in your application.
Thank you for that information. That clarifies the problem very well.
I've disabled the watchdog accesses when running in simulation using #ifdef round them and a project target for simulation with the appropriate define.
Thanks again.