avatar_PulkoMandy

Nova - NVRAM + RTC for Amstrad CPC - Latest news from PulkoTronics

Started by PulkoMandy, 21:10, 24 February 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

zhulien

I think I get it now, you want to read the config file from the ROM before the system comes back to the user, but that can still be done depending on the order of the ROMS if you want to fall back on other existing FS ROMS during the boot process.  This does limit the system startup though in ways which are best resolved via NVRAM.


The other option as I suggested was just to let the system boot to BASIC, once in BASIC whatever existing ROMS are in place can be used to configure UniDOS before UniDOS takes over.  This can be done via RSXs but still the same limitation as no NVRAM.


Then a custom-patched ROM with small BASIC ROM patcher would ultimately be the next best option without NVRAM.

zhulien

As Sykobee suggested, i was thinking if you treat your NVRAM as slots like you said, but had the first slot being used by the NVRAM itself for a RAT (RAM Allocation Table).  Examples of how I am setting up a RAT for banking is here:


https://docs.google.com/spreadsheets/d/1XgRVlh27K_C0-gMtroMhN8lK9mAQxVQg1x-3M42kBYo/edit#gid=1980957477


and is fast for allocations and deallocations.  Just as per the examples here setup a RAT for each NVRAM if you have multiple and the same pattern should work well.


As you can see, one or more entires in the RAT can be allocated by a single driver (or application in your case).  D (allocated by driver), E (extension of the allocation), F (free), A (application)... DEEF means a driver allocated 3 blocks, the first free one is block 4.  When freeing the driver, the D and any subsequent E's need freeing.


PulkoMandy

Hi!


The Nova is fully working and available for sale now.


The board costs 35€ (a bit more than usual, because these NVRAM and batteries are not cheap).


Please contact me if you need one.

zhulien


GUNHED

Quote from: zhulien on 12:45, 27 March 21
Could a AT24C256 work as NVRAM for this purpose when plugged into one of the many serial interfaces?  Usifac?  Lambdaspeak?
https://ww1.microchip.com/downloads/en/DeviceDoc/doc0670.pdf
m570.l1313&_nkw=AT24C256&_sacat=0
At least the LambdaSpeak III has an 128 KB EEPROM, which can of course be used as kind of nvRAM too. In this case the 128 KB are read / written through the LS I/O port. It's not banked in, but I/O is quick enough.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

Targhan

@PulkoMandy So finally, how the UniDos will know at what address to look at to get its data?
And where a possible ùSNA would know where to store its own (it only needs temp data)?

Have you decided of anything to allow programs to reserve slots?
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

zhulien

Quote from: Targhan on 11:04, 28 March 21
@PulkoMandy So finally, how the UniDos will know at what address to look at to get its data?
And where a possible ùSNA would know where to store its own (it only needs temp data)?

Have you decided of anything to allow programs to reserve slots?


Perhaps a few methods could be tried in sequence to see if the NVRAM (whichever method) is available?  Nova?  Lambdaspeak?  Serial EEPROM via Usifac?  Serial EEPROM via other serial ports?  I did suggest someone create an 8 serial port board in another thread - which something like this Serial EEPROM would be ideal for, perhaps an Usifac-8 (8 port).  Or an Usifac-4 (4 port)? @GUNHED

PulkoMandy

Quote from: Targhan on 11:04, 28 March 21
@PulkoMandy So finally, how the UniDos will know at what address to look at to get its data?
And where a possible ùSNA would know where to store its own (it only needs temp data)?

Have you decided of anything to allow programs to reserve slots?


I do only the hardware here. Contact OffseT if you want to know his plans for UniDOS.
There is 32K of space, I hope you can find an agreement on how to share it, there should be enough space for everyone!

GUNHED

Quote from: PulkoMandy on 19:18, 08 April 21
There is 32K of space, I hope you can find an agreement on how to share it, there should be enough space for everyone!
Therefore we got this here:
https://www.cpcwiki.eu/forum/technical-support/application-user-ids-for-non-volatile-ram-(nvram)-listed-here-request-here/msg198965/#msg198965

Or do it in which way you want, but we should all have an agreement. Else software is incompatible again.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

PulkoMandy

Hi!


Version 1.2 of the Nova NVRAM+RTC expansion is now available. It is fully compatible with the previous version and fixes one small problem: the RAM/RTC was not unmapped automatically on the CPC soft reset (control shift esc, RST 0, or similar). If you have the previous version of the card, in most cases you will be fine: the UniDOS ROM (the only user of the Nova so far) takes care of blocking interrupts when accessing the device (so, no softreset can happen with the board mapped) and as an additional safety, unmaps the memory on startup when it initializes it.


If you have a convincing explanation of how this bug is a problem for you, I can swap your old version of the Nova for a new one. Otherwise, you can keep using your card safely.


The price is unchanged (35€) and thanks to usage of a programmable GAL chip (first time I do this, it was about time I get into these modern techniques), the board is just the same size as before, and a bit faster for me to assemble because there are fewer chips.

GUNHED

Quote from: PulkoMandy on 19:52, 25 June 21
Version 1.2 of the Nova NVRAM+RTC expansion is now available.
Please put me on the customers list, I want to support the Nova and its RTC with my software.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

PulkoMandy

Quote from: GUNHED on 14:29, 26 June 21
Please put me on the customers list, I want to support the Nova and its RTC with my software.  :)


If that's fine for you I will group the shipping together with your Willy boards (when I have these ready, probably in about 3 weeks as I have to order the PCBs for these).

GUNHED

Quote from: PulkoMandy on 14:49, 26 June 21

If that's fine for you I will group the shipping together with your Willy boards (when I have these ready, probably in about 3 weeks as I have to order the PCBs for these).


That would absolutely be great, but let me please have one one card of each. So others can have the Willi too (and economy is not so good at the moment for me anyway). Grouping is a good idea. Thanks!  :) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

it would be great to see something else added to the card as well but i guess everything added, adds to the cost.  But a couple more serial ports (compatible with the others on Llambaspeak, Unifac, MiniBooster port-wise) would be cool.


Mark me down for 2 NVRAM+RTC cards if you have them.

GUNHED

That's a question of philosophy. Either one can create a card with a particular function OR a multi-expansion card.
Here, IMHO PulkoMandy did achieve his target, which is nvRAM and as a bonus there is an RTC. (Did I mention that I love RTCs?).
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

PulkoMandy

I have put a serial port in the Albireo card. I don't need more serial ports on my CPC.

zhulien

Quote from: GUNHED on 10:49, 01 July 21
and as a bonus there is an RTC. (Did I mention that I love RTCs?).

I haven't yet figured out a use for an RTC.  Maybe a game could change to dark at night or light at day.

GUNHED

Quote from: zhulien on 14:16, 03 July 21
I haven't yet figured out a use for an RTC.  Maybe a game could change to dark at night or light at day.
Ah, an health mode. Well, using an RTC in an game is one of the very few things I never thought about. But for long time reality simulations - why not?  :)

What's an RTC good for?
- Replacing the watch on your room's wall (use !BIGWATCH command with Dobbertin RTC or LFS RTC)
- Replacing the watch on you arm and immediately stop being a Corona breed station.  ;)
- Eventually you can put a time stamp to your files (CP/M Plus and other OS)
- Use your great CPC for a variety of real time measurements
- Needed for a model car (Matchbox?) racing table for a friends son.
- Watch the time going by on your CPC (nothing is more pretty)
- Deal with updated files compared to old versions
- Control you house (heating, blinds, making coffee in the early morning etc.)
- and
- much
- more
:) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien


PulkoMandy

Hello,


Everyone who pre-ordered a card, your orders are ready to ship, please send me payments and shipping addresses :)


Everyone else, if you want a Nova card, there are some left in stock (and I can build more if it gets more popular)

GUNHED

@PulkoMandy : Merci beaucoup for this great expansion.  :) :) :)

Got my Nova yesterday and it works like a charm.
For everybody interested, here is the data sheet of the 32 KB nvRAM/RTC chip called M48T35Y 70MH1F. The RTC got some cool features.  ;) :)

(Well, I assume we all have the 32 KB nvRAM version, right?)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

PulkoMandy

Yes, all Nova cards come with the 32KB chip.

GUNHED

Well, the Nova card is very friendly for usage... I had a bit of time and so I added Nova RTC support to FutureOS. Here is just the German version for CPC6128 as demonstration (install the OS from DSK, start it and see the Nova's Time and Date - you can set clock and date too).
If other languages (French, Spanish, English...) are of interest, please let me know.
DSK see here...
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

I received my Nova boards today, many thanks.  So glad that M4 support is already added to UniDOS too.

PulkoMandy

Hello,


The second batch of Nova boards is now sold out. I am now taking preorders for another batch. Anyone still wants one? Let me know!

Powered by SMFPacks Menu Editor Mod