UltiMem

Modding and Technical Issues

Moderator: Moderators

User avatar
majikeyric
Vic 20 Devotee
Posts: 214
Joined: Fri Oct 24, 2014 2:08 pm
Website: http://majikeyric.free.fr
Location: France

Re: UltiMem

Postby majikeyric » Tue May 24, 2016 9:01 am

tokra wrote:To my surprise PEEK(40947) $9ff3 produced a value of 17 ($11) instead of 18 ($12), which mean this is a VIC-MIDI-cart instead of an Ultimem according to the docs:

http://www.go4retro.com/products/ultimem/

:?: :?: :?:

Is this falsely documented? Or is my device flashed with the wrong firmware or something?


My Ultimem ID is also 17 ($11).

brain
Vic 20 Afficionado
Posts: 424
Joined: Sun Jul 04, 2004 10:12 pm

Re: UltiMem

Postby brain » Tue May 24, 2016 9:23 am

tokra wrote:Just received my Ultimem today. Took me some time no find out you need to hold all three buttons on reset to circumvent it starting with Quikman.

Anyway, in my first experiments I tried running Doom (works) and peeked the values of the device. To my surprise PEEK(40947) $9ff3 produced a value of 17 ($11) instead of 18 ($12), which mean this is a VIC-MIDI-cart instead of an Ultimem according to the docs:

http://www.go4retro.com/products/ultimem/

:?: :?: :?:

Is this falsely documented? Or is my device flashed with the wrong firmware or something?

I also noticed the docs mention:

BLK2_BANK ($9ffa/b)
Default Value 4:

BLK3_BANK($9ffc/d)
Default Value: 4

While in reality BLK3 is (rightly) mapped to default value 5 (otherwise the two BLKs would not work if mapped to the same bank).


You should only need to hold the middle button to bypass auto start on boot. If you need to reset. Hold down middle and press right button

It looks like I have the docs wrong. I will fix tonight.

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Wed May 25, 2016 12:24 pm

I think I found some more issues in the docs:

On boot, BLK5 is set to RAM bank 0. All other banks are disabled

Shouldn't this be "set to ROM bank 0" instead? Otherwise no image could autoboot. Also I assume ROM always means the Flash?

On boot and reset, holding down switch0 will disable BLK5 ROM visibility

What is "switch0"? On my Ultimem the three switches are named S1,S2 and S3 with S3 being the reset-switch. I assume you mean switch S2 in this case?

ID ($9ff3)

$11 for VIC-MIDI CART
$12 for ULTIMEM CART

As mentioned earlier majikeyric's and my UltiMem report $11, so is this an error or does the VIC-MIDI CART actually report something else?


Also, can you please let me know if I understand this correctly:

UltiMem: 8 megabyte (Flash)-ROM and 1 megabyte RAM
= banks 0-1023 ROM & banks 0-127 RAM

VIC-Midi: 512 KByte (Flash)-ROM and 128 KByte RAM
= banks 0-63 ROM & banks 0-15 RAM

What happens if I address a bank out of this range?

I think the information about UltiMem/VIC-MIDI should really go into the Denial WIKI, I have set up a page for that now.

brain
Vic 20 Afficionado
Posts: 424
Joined: Sun Jul 04, 2004 10:12 pm

Re: UltiMem

Postby brain » Wed May 25, 2016 7:06 pm

tokra wrote:Shouldn't this be "set to ROM bank 0" instead?

Yes and it is now correct in the docs
Also I assume ROM always means the Flash?

Yes, and I clarified in the docs
What is "switch0"? On my Ultimem the three switches are named S1,S2 and S3 with S3 being the reset-switch. I assume you mean switch S2 in this case?

Yes, and I clarified in the docs. Looking at the UltiMem while plugged in, from left ot right, it is switch 1, switch 0, reset
As mentioned earlier majikeyric's and my UltiMem report $11, so is this an error or does the VIC-MIDI CART actually report something else?

I had them backwards. Docs updated.


Also, can you please let me know if I understand this correctly:

UltiMem: 8 megabyte (Flash)-ROM and 1 megabyte RAM
= banks 0-1023 ROM & banks 0-127 RAM

Yes
VIC-Midi: 512 KByte (Flash)-ROM and 128 KByte RAM
= banks 0-63 ROM & banks 0-15 RAM

Yes

What happens if I address a bank out of this range?

The bank registers are only 10 bits wide, so the value will wrap at that point. RAM address is shorter (7 bits), but only the loweest 7 bits are connected to RAM, so bank 128 = bank 0.

Jim

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Thu May 26, 2016 1:41 am

Thanks, I updated the Wiki-page as well, also put in a Getting started-section on how to use the UltiMem as a simple RAM-expansion.

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Thu May 26, 2016 4:08 pm

pixel wrote:Then make a compressed version for flash.prg.

Code: Select all

./flash4file.exe ultimem.img ultimem.bin


I'm stuck at this point. Starting flash4file.exe just gives me an error "The NTVDM CPU has encountered an illegal instruction". I tried this on 4 different PCs with Win7,Win10, an old XP-machine and even in DOSBox. Always the same error. I was trying to create my first ultimem-image:

Edit: Ok, I have recompiled the flash4file.exe using http://www.onlinecompiler.net/ - if anyone needs it here it is:
flash4file.zip
(2.39 KiB) Downloaded 4 times

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Fri May 27, 2016 1:45 am

I have been able to create my first UltiMem-Boot-Image now. It is a simple RAM-expansion-chooser, so you can use the UltiMem easily to configure it for Doom or any program you'd like to load.

To put this image on the Ultimem copy the flash.prg and ultimem.bin to an SD-card or floppy-disk. Reset your UltiMem to BASIC (hold middle-button while pushing right button), it should then show the usual startup message "3583 bytes free". Then just LOAD and RUN flash.prg - it will do its work for about a minute and when it's finished you can press reset on your UltiMem again (right button).

ultimem-ram.zip
(1.43 KiB) Downloaded 9 times

ultiram.png
ultiram.png (10.28 KiB) Viewed 353 times

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Fri May 27, 2016 11:19 am

I improved my UltiMem-Image to include a fastloader (SJLOAD). Basically for any config you choose that is not 37K, you can type "SYS 40000" after reset to activate it. Hiding in this area SJLOAD is highly compatible. You can even run Doom with it for much faster loading and in-between-level-time.

This is basically the same as tlr did for the MegaCart, however it is not as comfortable to use yet since you have to start it by SYS manually. However if not activated you will not notice it is there at all. I compiled SLOAD with the most basic options so it only takes up around 940 bytes, allowing it to be placed at $9c40 (easy to remember decimal 40000). This way it also does not conflict with the Ultimem-registers (although I disable those in my config-menu for compatibility reasons).

Below you can find the image for download. Install as before by putting both files on a disk or SD-card and load/run flash.prg.

ultimem-ram-sjload.zip
(2.26 KiB) Downloaded 12 times
ulticonfig.png
ulticonfig.png (10.01 KiB) Viewed 283 times
Last edited by tokra on Sat May 28, 2016 2:00 am, edited 1 time in total.

User avatar
majikeyric
Vic 20 Devotee
Posts: 214
Joined: Fri Oct 24, 2014 2:08 pm
Website: http://majikeyric.free.fr
Location: France

Re: UltiMem

Postby majikeyric » Fri May 27, 2016 11:46 am

Is there an easy way to uncompress image files compressed with flash4file ?

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Fri May 27, 2016 1:14 pm

I don't think so and cannot see what reason would there be to do so?

User avatar
majikeyric
Vic 20 Devotee
Posts: 214
Joined: Fri Oct 24, 2014 2:08 pm
Website: http://majikeyric.free.fr
Location: France

Re: UltiMem

Postby majikeyric » Sat May 28, 2016 1:39 am

To test it in Vice before flashing.

User avatar
tokra
Vic 20 Nerd
Posts: 711
Joined: Tue Apr 27, 2010 5:32 pm
Location: Germany

Re: UltiMem

Postby tokra » Sat May 28, 2016 1:44 am

I tried it in VICE with my two images, but it says "invalid cartridge image". Not sure what could be the cause. Maybe VICE expects 8 MB-images? In my first try I created an 8 MB-image but this took half a day to flash compared to a minute for the smaller image, so I am now using these. You can try for yourself:

ultimem-images.zip
(1.84 KiB) Downloaded 8 times

User avatar
majikeyric
Vic 20 Devotee
Posts: 214
Joined: Fri Oct 24, 2014 2:08 pm
Website: http://majikeyric.free.fr
Location: France

Re: UltiMem

Postby majikeyric » Sat May 28, 2016 2:37 am

Yes VICE expects 512KB or 8MB image files.

You can use makecart (without filelist.txt) to create such a file :

Code: Select all

makecart menu.img ultimem.img 524288 < NUL

User avatar
pixel
Vic 20 Nerd
Posts: 700
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: UltiMem

Postby pixel » Sat May 28, 2016 2:40 am

VICE also accepts 16MB files. :) Thanks for the Windows binaries, tokra!
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
beamrider
Vic 20 Nerd
Posts: 634
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: UltiMem

Postby beamrider » Sat May 28, 2016 4:17 am

Would be nice if there was an "official" boot image for this cart along the lines of the megacart menu. I guess this cart would then offer everything the MC does but offer the benefit of ready availability, updatable and larger memory.


Return to “Hardware and Tech”

Who is online

Users browsing this forum: No registered users and 1 guest