Changes
Nova
,/* Links */
<u>No</u>n-<u>v</u>ol<u>a</u>tile RAM and [[RTC|Real Time Clock (RTC)]] for Amstrad CPC.This works like RAM, but the content is not erased when the computer is off. All Nova cards come with the 32KB chip. [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/nova-nvram-rtc-for-amstrad-cpc-latest-news-from-pulkotronics/msg205606/#msg205606 Source]
[[File:Pulkotronics Nova.jpg]]
The main uses of NVRAM are: [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/nova-nvram-rtc-for-amstrad-cpc-latest-news-from-pulkotronics/msg199014/#msg199014 Source]*For UniDOS, the goal is primarily intended as to store the configuration of UniDOS in a debugging tool for developerssingle place even if you have many storage devices connected to your CPC. Since the card also provides a realtime clock, UniDOS will be able to set the correct file dates in the filesystem.*For development tools: here the idea is precisely to NOT be [[Standard Memory Expansions|dktronic's compatible]]. You can load some code into the RAM and have it available without interference on the CPC state. Very useful if you want to debug some other code.
== Ports ==
The interface uses only one port (&FE82) to map the NVRAM in and out. It is possible to map it at any address multiple of &2000.
The four higher bits of the byte sent to port &FE82 determine the base address: 0 = &0000, 2 = &2000, 4 = &4000, ..., E = &E000.
The NVRAM, when it is enabled, masks 8K of RAM or ROM and replaces it with its own contents. Four NVRAM pages of 8K are available.
The four lower bits of the byte sent to port &FE82 selects the page: 8 = page0, 9 = page1, A = page2, B = page3, the other values disable the mapping.
In the fourth page, the last 8 bytes are not normal RAM, but can be used to read and write the time from the realtime clock.
Assuming the interface is mapped at 6000-7FFF:{| class="wikitable" style= Links "text-align:center;"|-! rowspan="2" | Address! colspan="8" | Data! rowspan="2" | Range (BCD)|-! D7 !! D6 !! D5 !! D4 !! D3 !! D2 !! D1 !! D0|-| 7FFFh || colspan="4" | 10 Years || colspan="4" | Year || 00-99|-| 7FFEh || 0 || 0 || 0 || 10 M. || colspan="4" | Month || 01-12|-| 7FFDh || 0 || 0 || colspan="2" | 10 date || colspan="4" | Date || 01-31|-| 7FFCh || 0 || FT || CEB || CB || 0 || colspan="3" | Day || 00-01/01-07|-| 7FFBh || 0 || 0 || colspan="2" | 10 hours || colspan="4" | Hours || 00-23|-| 7FFAh || 0 || colspan="3" | 10 minutes || colspan="4" | Minutes || 00-59|-| 7FF9h || ST || colspan="3" | 10 seconds || colspan="4" | Seconds || 00-59|-| 7FF8h || W || R || S || colspan="5" | Calibration || |}
*[https://pulkomandy.github.io/shinra.github.io/nova.html Official website]*[[Media:Nova cpc nvram.pdf|SchematicsNova KiCad schematics]]*[https://framagit.org/offset/nova-acepansion Nova ACEpansion] on Framagit*[[Media:M48t35.pdf|Datasheet of the M48T35Y TimeKeeper SRAM chip]]
[[Category:Peripherals]]
[[Category:Hardware]]
[[Category:Memory expansions]]