Jump to content
IGNORED

In-place Ultimate 1MB / Incognito ROM editor and flash tool


flashjazzcat

Recommended Posts

Decided to give this its own topic, since it doesn't really have anything to do with APT (previous posts were in the APT Hard Disk Preparation and Utilities thread).

 

Can't start it with a download quite yet (although there'll be a version to test in a day or two), but I wanted to demonstrate the basic procedure for editing the flash ROMs so people can hit the ground running when I post a version of the software for testing.

 

 

The video shows a PBI ROM update, followed by BASIC slot 2 being replaced by the Atari Assembler Editor. You'll notice the slot descriptions can be edited and flashed to ROM at any time. I then replace the High-Speed OS with the 1200XL OS.

 

Flashing is somewhat slower than it would be when using 4KB sector flash ROMs (Altirra only emulates 64KB sector chips for Ultimate), and of course it's also possible to load all ROM images from the hard disk (in the video, they're loaded from the host device via SIO).

 

Don't really want to spend too long on this, so hopefully it'll be done shortly. I need to add 4KB sector and Incognito support before I have something ready for testing.

  • Like 8
Link to comment
Share on other sites

As promised, a version of the in-place flasher and editing tool (uFLASH) for testing:

 

uflash.xex

 

I've just spent half an hour or so testing this build on three Ultimate machines and an Incognito equipped 800, with no bricking so far. ;) However, I fully expect there to be one or two (possibly significant) bugs which haven't surfaced yet, so if you don't have recourse to an external programmer, you might want to wait until some who do have tested the utility - at least if you're thinking of flashing the main BIOS or SDX. Other slots aren't so critical: after all, as long as the BIOS and SDX work, you can usually recover a bad flash.

 

That said, I've had no failed flashes at all so far (the program uses Candle's own JEDEC flash library, which is "guaranteed bug free"), and there are a number of safety checks built into the program to ensure the wrong content never gets flashed to critical regions of the ROM.

 

Most pleasingly, you can edit the slot names (XEGS, OS and BASIC slots in Ultimate, and Colleen and XL/XE OS slots in Incognito) and these will never be lost until you flash the chip using some other utility. Even if you flash a new main BIOS, the existing slot descriptions are merged into the new ROM. Import/export description facilities (pretty trivial) will be added later, so the descriptions can be stored in plain text files.

 

You can also dump slots to disk, which is particularly handy for testing: dump the slot, reflash using the dump, etc. Dumping the SDX slot to a SIDE partition and reflashing it gives an idea of how quickly 256KB of data can be chewed through when everything's held in RAM. When dumping a file, select the target drive using the drop down, then tab across to the filename box at the top, and type the filename and extender WITHOUT the drive ID in front.

 

What's not working/finished yet:

 

  • Dump entire ROM to disk
  • Slot properties (PBI version, slot geometry report, etc)
  • Import/export descriptions
  • File selector auto-sensing the SDX default drive
  • Mandatory reboots after flashing critical ROM content
  • Separate flashing of the Ultimate BIOS and SIDE loader (it's currently assumed they're concatenated into a single 32KB file; if it's better to have them separate, let me know and I'll change it)
  • Prototype Incognito support

 

Read that last one twice: don't use this with proto Incognito boards. Support can be added later if required, but it isn't there yet.

 

Auto-sensing of the hardware (i.e. Ultimate or Incognito) is currently performed via the BIOS ID string, so isn't 100 per cent foolproof. Unfortunately I haven't figured out a way to ID the hardware using only the hardware yet.

 

Before running the program, you should enable SDX and extended RAM. If you enable 1MB of RAM, there's less chance of the cache (which consumes up to 256KB) wiping out the SDX banks, although you should really reboot anyway following most flash sessions. In addition, SDX should be using BANKED RAM, since uFLASH runs the OS in RAM so that flashing the active OS slot won't cause a lock-up.

 

I'll add all these refinements (reboot warnings, SDX OSRAM detection, etc) over the next few days. The file selector also needs quite a bit of tidying up and bug-fixing.

 

Finally, a really nice bonus is that you can run uFLASH from Candle's latest (stand-alone, disk-based) XEX loader... or at least you will be, once a very minor bug in his (excellent) mini FAT-DOS has been corrected, which results in short reads. But when testing the combo the other night, I got a glimpse of what's possible: put UFLASH.XEX and all the ROM files in the FAT32 partition of the CF card, boot the loader, run uFLASH, and load the images right off the FAT.

 

In any case, you could do the same thing using KMK's FATFS driver using a FAT16 partition (prepared using the latest APT FDISK), or just copy the ROMs into an APT partition. In all cases, it's significantly faster that loading the ROMs from a serial device.

 

Anyone who tries this program and finds a problem - please report it here ASAP for the benefit of others. :)

 

Enjoy!

Edited by flashjazzcat
  • Like 2
Link to comment
Share on other sites

here:

but PBI is now updated

 

Thanks. But the entire upper half of the ROM is blank, save for a few scattered bytes. I have no idea how the machine is even booting up. No BIOS, no PBI, no BASIC, no QMeg OS - nothing. This certainly explains how the hardware is not detected, anyway.

 

Please flash the chip with a recent complete 512KB image and try again. ;)

Edited by flashjazzcat
Link to comment
Share on other sites

Correction: just tested it in Altirra and it appears to be Trub's older flasher which doesn't like 4KB sector Flash ROMs. It times out while erasing if the sectors aren't 64KB, but then tries to flash the device anyway.

 

Solution: use the newer version of Trub's flasher which is fixed up for 4KB sector ROMs.

Edited by flashjazzcat
Link to comment
Share on other sites

No comment.

 

Still trying to figure out the Menu system. But I was able to DUMP all the Basic/Game slots to D5:... Since I like my current ROM I have no need to re-flash anything yet.. But as test I renamed the basic slots in reverse order and re flashed the dumped roms successfully into their renamed slots.

Link to comment
Share on other sites

i have it.. hmm, its possible know INFO in this ROM tool which version of PBI i have? or BIOS, etc..

 

ps. i cant find normal ATR with U1MBv2 with SDX 4.46a and with PBI 0.3 - or 0.4.. so i must create it, ohh

spartados.com - SDX446_ultimate.atr - why not SDX446a? why is not merged with PBI?
atari8.co.uk - PBI 0.3.. where is 0.4?

 

chaotic :/

 

ps2: LOOOL -
i try reflash PBI 0.4

i see:

CURRENT PBI BIOS V.1.0

UPDATE TO PBI BIOS v.0.4

 

why why is so chaotic?

Edited by w1k
Link to comment
Share on other sites

i have it.. hmm, its possible know INFO in this ROM tool which version of PBI i have? or BIOS, etc..

Yes - that will be possible when I add these facilities. I want to test the utility's flashing capability first.

 

ps. i cant find normal ATR with U1MBv2 with SDX 4.46a and with PBI 0.3 - or 0.4.. so i must create it, ohh

spartados.com - SDX446_ultimate.atr - why not SDX446a? why is not merged with PBI?

atari8.co.uk - PBI 0.3.. where is 0.4?

There's a perfectly good stock Ultimate ROM at Lotharek's website. And why would I place beta BIOSes and tools on my website when I already posted them here for TESTING purposes?

 

chaotic :/

 

ps2: LOOOL -

i try reflash PBI 0.4

i see:

CURRENT PBI BIOS V.1.0

UPDATE TO PBI BIOS v.0.4

 

why why is so chaotic?

It's chaotic because you clearly began with a munged Ultimate ROM. I posted this tool for people with working Ultimates and Incognitos to test. The thread is rapidly turning into a troubleshooting discussion about your Ultimate 1MB's ROM content, and this is before you've even managed to get uFlash to recognize the hardware.

 

When you have the Ultimate in a compatible state, please test uFlash and report results. ;)

Link to comment
Share on other sites

ok.. flashed new u1mb from spartados.com, replaced PBI and finally :)

 

via this ROM util succesfull replaced STOCK OS -> Q-MEG 5rc, succesull changed names. for me works..

question: i found SDX 4.46a only for SIDE II, can i flash SDX 4.46a with this tool to U1MB?

 

------------

edit.. so :) i tryed it - reading stops in 240/256kb..uff :)

------------

edit.. bug? "SIDE hardware" item - i see 2X option DISABLED.. so..disabled, disabled, on-w/o, on-with..

Edited by w1k
Link to comment
Share on other sites

via this ROM util succesfull replaced STOCK OS -> Q-MEG 5rc, succesull changed names. for me works..

Good - thanks.

 

question: i found SDX 4.46a only for SIDE II, can i flash SDX 4.46a with this tool to U1MB?

No.

 

so :) i tryed it - reading stops in 240/256kb..uff :)

Interesting. Stops how? With an error message? Lock up? I tried flashing the Ultimate build of SDX already and it worked OK here.

 

bug? "SIDE hardware" item - i see 2X option DISABLED.. so..disabled, disabled, on-w/o, on-with..

That's because of the way the menu items are designed (each has to have four options). Nothing to worry about. ;)

Edited by flashjazzcat
Link to comment
Share on other sites

latest option changed from XEGS to EGS :)

i try reflash SDX4.46a.ROM - then stops and freeze.. but not happened :)

Send me the ROM.

 

BTW: Regarding freezing - just realized what's going on there. Using 576KB or 1088KB instead of 320KB will solve the problem.

 

Flashing SDX uses sixteen extended banks, and the last one happens to be where SDX lives.

 

EDIT: Missing initial "X" on XEGS was a bug (if description of previous slot was 14 characters long, first character of following title was overwritten).

 

All fixed in next upload. ;)

Edited by flashjazzcat
Link to comment
Share on other sites

New build:

 

uflash.xex

 

Fixes/Changes

  • Slot description of maximum allowable length no longer causes first character of following slot's title to be wiped out
  • Program now insists on a minimum of 576KB of RAM, to avoid problems with SDX running in banked memory
  • Slot->Properties now displays the slot title, base address and size, as well as the content version number (where applicable; see below)
  • Slots updated during a session are now marked "Updated"
  • A mandatory reboot is now enforced at the end of a session if ROM content has changed
  • Manual "Reboot" option added to the Device menu

 

To Do

  • Various tweaks to the file selector
  • Option to dump entire ROM
  • Option to flash entire ROM
  • Import/export slot descriptions

 

The reason the PBI ROM slot is the only one whose version number is displayed in Slot->Properties is because the PBI ROM is the only item in Ultimate/Incognito whose version number is conveniently accessible (immediately after the magic bytes). SDX should be doable shortly. Obviously the GUI's will be accessible, and I'll ask Candle about the BIOS version number.

 

post-21964-0-30175400-1389903518_thumb.png

 

If I can get version numbers of all the top four slots, I'll display them next to the slot names in the editor.

 

Edited by flashjazzcat
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...