Nextor 2.1 released

por konamiman en 01-08-2020, 09:29
Tema: Software
Idiomas:

It’s been a while since the Nextor 2.1 branch made its first baby steps and also since an updated version was released, but all good things deserve waiting and here’s finally it: the final release of Nextor 2.1.0, ready to be flashed in your favorite device (or configured in your favorite emulator).

Here’s the list of the main changes from the Beta 2 version:

  • A new _GETCLUS function call allows to retrieve information about a cluster from a FAT12 or FAT16 drive, such as the FAT sector and position where the entry is located, and the relevant first data sector number. This information may be useful for tools that do low-level drive manipulation such as disk defragmenters/optimizers.
  • EMUFILE.COM now uses _GETCLUS to make sure that all the disk image files to emulate are stored across consecutive sectors. Also, a new CONCLUS.COM tool will give you the same information without having to start a disk emulation session.
  • Added a new boot key: pressing “N” at boot time disables all the Nextor kernels present. The NEXBOOT.COM tool is updated as well to support this.
  • Added UNAPI RAM Helper compatible mapper support routines for accessing mapped RAM by specifying both a segment number and a slot number. The UNAPI discovery procedure is implemented too for these, this means that applications that need these routines to run (e.g. InterNestor Lite) can now be started without having to install anything beforehand.
  • A bunch of bugs have been fixed.

Note that for CONCLUS.COM and the new EMUFILE.COM to work, NEXTOR.SYS needs to be upgraded to the new v2.11, so be sure to download it as well.

Relevant link: Nextor 2.1 release in GitHub

Comentarios (36)

Por konamiman

Paragon (1213)

Imagen del konamiman

01-08-2020, 09:35

I want to thank everyone who submitted bug reports and enhancements suggestions in GitHub, most of the fixed bugs are a direct consequence of those. Especially Eugeny Brychkov, who has been especially pedantic - and very rightfully so! Smile

Por Manuel

Ascended (19803)

Imagen del Manuel

01-08-2020, 09:46

Great job!

Can you tell more about the sunrise IDE emulation issues, so that they can be fixed?

Por lintweaker

Champion (478)

Imagen del lintweaker

01-08-2020, 10:16

Nice work!

Por karloch

Prophet (2159)

Imagen del karloch

01-08-2020, 10:17

Thank you Konamiman for this new release!

Por konamiman

Paragon (1213)

Imagen del konamiman

01-08-2020, 12:59

Manuel wrote:

Can you tell more about the sunrise IDE emulation issues, so that they can be fixed?

There are two drivers:

  • v0.1.5 is an improvement of the experimental driver I originally wrote, made by Piter Punk. This is the one that the ROM labeled as "for emulators" uses.
  • v0.1.7 is is an improvement of v0.1.5 made by FRS.

The problems:

  1. v0.1.7 doesn't recognize the master device in emulators (or in blueMSX at least), v0.1.5 does; that's the reason why I am publishing two drivers in the first place.
  2. In Carnivore2 some CF cards work only when using driver v0.1.5, some other cards work only when using driver v0.1.7.

And that's what I can tell you. I know nothing about IDE hardware, the little I learned in order to be able to develop the original driver 10-ish years ago I forgot long since.

Por Grauw

Ascended (10860)

Imagen del Grauw

01-08-2020, 14:24

Congratulations! And thank you!

Por gdx

Enlighted (6611)

Imagen del gdx

01-08-2020, 15:58

Where is the source code for the CF/IDE drivers?

Por sd_snatcher

Prophet (3684)

Imagen del sd_snatcher

01-08-2020, 17:07

Thank you for your continued efforts to improve Nextor! Big smile

Por konamiman

Paragon (1213)

Imagen del konamiman

01-08-2020, 17:26

Por konamiman

Paragon (1213)

Imagen del konamiman

01-08-2020, 20:31

Hi all Nextor fans and especially driver developers, please take a look at this: https://msx.org/forum/msx-talk/development/my-plans-for-next...

Por Aquijacks

Champion (301)

Imagen del Aquijacks

02-08-2020, 10:25

Perfect !!!
Thanks.

Por erpirao

Paragon (1337)

Imagen del erpirao

02-08-2020, 13:03

flashjacks: update
mgfsd 1 slot: update
mgfsd 2 slots: update
c2: not update
gr8net: not update
sunrise ide: not update

Por usuario_msx2

Paladin (763)

Imagen del usuario_msx2

02-08-2020, 15:37

Mega-scsi driver ....??

Por konamiman

Paragon (1213)

Imagen del konamiman

02-08-2020, 15:56

erpirao wrote:

flashjacks: update
mgfsd 1 slot: update
mgfsd 2 slots: update
c2: not update
gr8net: not update
sunrise ide: not update

Excuse me...? Question

Por Wierzbowsky

Guardian (3681)

Imagen del Wierzbowsky

02-08-2020, 21:29

Good job, Nestor!

Por Latok

msx guru (3973)

Imagen del Latok

03-08-2020, 00:11

How do I flash the new Nextor ROM again in Mega Flash Rom SCC SD? Using OPFXSD.COM?

Por Latok

msx guru (3973)

Imagen del Latok

03-08-2020, 00:20

Ah yes, with the /I option and importantly, boot it from another device! So I am going to copy msxdos2.sys, command2.com, opfxsd.com and the kernel ROM file to a diskette and boot it from there....

Por Eugeny_Brychkov

Paragon (1234)

Imagen del Eugeny_Brychkov

03-08-2020, 21:39

Thank you Nestor for good words. I am very happy that we have solved tough problems, and now I can proceed continuing development of GR8STORM for DOS2!

Por ToriHino

Paladin (956)

Imagen del ToriHino

03-08-2020, 22:27

Latok wrote:

Ah yes, with the /I option and importantly, boot it from another device! So I am going to copy msxdos2.sys, command2.com, opfxsd.com and the kernel ROM file to a diskette and boot it from there....

You can also just put the rom file on an empty SD card, hold the cursor up key during boot and use F4 to install the new kernel.

Por Latok

msx guru (3973)

Imagen del Latok

03-08-2020, 22:40

Why on an empty sd card?

Por konamiman

Paragon (1213)

Imagen del konamiman

04-08-2020, 09:53

Latok wrote:

Why on an empty sd card?

I guess it's for the way the MFRSD recovery ROM works. It scans the physical sectors of the SD card searching for the header of the file, bypassing any partition/filesystem structure existing in the card; thus if you had an old kernel ROM file in the card and just copy the new one to the card, the recovery ROM will still find the old one first and thus flash that one.

What I usually do is to have the kernel file in the SD card with a generic name, like KERNEL.ROM, and copy over any new version giving it the same name.

Por konamiman

Paragon (1213)

Imagen del konamiman

04-08-2020, 09:55

Latok wrote:

So I am going to copy msxdos2.sys, command2.com, opfxsd.com and the kernel ROM file to a diskette and boot it from there....

It's NEXTOR.SYS Smile

MSXDOS2.SYS will work too (it will allow you to boot and load COMMAND2.COM) but you won't be able to use the Nextor-specific tools.

Por Latok

msx guru (3973)

Imagen del Latok

04-08-2020, 20:52

But I booted with R key down to bypass SD.... I thought it would just start regular boot sequence from diskette and nextor won't be recognized. That's why I copied msxdos2.sys to diskette and not nextor.sys.

Anyway, the update was a success today Smile

Por Latok

msx guru (3973)

Imagen del Latok

04-08-2020, 20:55

konamiman wrote:
Latok wrote:

Why on an empty sd card?

I guess it's for the way the MFRSD recovery ROM works. It scans the physical sectors of the SD card searching for the header of the file, bypassing any partition/filesystem structure existing in the card; thus if you had an old kernel ROM file in the card and just copy the new one to the card, the recovery ROM will still find the old one first and thus flash that one.

What I usually do is to have the kernel file in the SD card with a generic name, like KERNEL.ROM, and copy over any new version giving it the same name.

So if you use this way of updating, booting with CURSOR UP pressed and then F4, you have to use the recovery ROM version with the word RECOVERY in its filename?

Por ToriHino

Paladin (956)

Imagen del ToriHino

04-08-2020, 23:45

Yes, that's right.

Por karloch

Prophet (2159)

Imagen del karloch

05-08-2020, 04:07

I always use the MFR recovery mode for upgrading the NEXTOR kernel, it is quite easy and you don't need other mass storage device.

Por gdx

Enlighted (6611)

Imagen del gdx

05-08-2020, 15:21

Is recovery mode conceivable for other devices in standard?

Por karloch

Prophet (2159)

Imagen del karloch

05-08-2020, 17:11

Recovery mode is a MFR feature, not a NEXTOR one, so the upgrade options are device-dependent.

Por ducasp

Paladin (713)

Imagen del ducasp

05-08-2020, 21:02

gdx wrote:

Is recovery mode conceivable for other devices in standard?

OCM's using KDL firmware do pretty much the same thing, you can have the first file in the SD being the BIOS of the whole system (it is a large file containing all ROMs, including Nextor), so, if there is such file as the first file in the SD Card, it will load all BIOS/ROMs from there, otherwise, it will use whatever was pre-programmed in the FPGA firmware. Whenever updating something I just create a new SDBIOS and copy it over using TFTP on my SM-X. Smile

Por DarkSchneider

Paragon (1034)

Imagen del DarkSchneider

10-08-2020, 11:43

Por S0urceror

Master (221)

Imagen del S0urceror

18-08-2020, 23:20

Has anyone tried to build the Nextor themselves?

With compile.bat I am able to create Nextor-2.1.0.base.dat but the subsequent MKNEXROM commands in compile.bat fail with: A driver file has been specified, but the base file appears to have a driver already.

There are no other error messages in the build output and it does create the base.dat but apparently not a right one.

When I download Nestor's version from here it works.

Please let me know what your experiences are?

P.S. I build on Windows 10 and have a build environment that managed to build the previous beta so I don't know what's different now.

Por konamiman

Paragon (1213)

Imagen del konamiman

19-08-2020, 13:58

That's really weird as the compile.bat you use is the exact same I do use Question Has the base file you get generated a size of 112K?

Por Manuel

Ascended (19803)

Imagen del Manuel

19-08-2020, 22:50

konamiman wrote:
Manuel wrote:

Can you tell more about the sunrise IDE emulation issues, so that they can be fixed?

There are two drivers:

  • v0.1.5 is an improvement of the experimental driver I originally wrote, made by Piter Punk. This is the one that the ROM labeled as "for emulators" uses.
  • v0.1.7 is is an improvement of v0.1.5 made by FRS.

The problems:

  1. v0.1.7 doesn't recognize the master device in emulators (or in blueMSX at least), v0.1.5 does; that's the reason why I am publishing two drivers in the first place.
  2. In Carnivore2 some CF cards work only when using driver v0.1.5, some other cards work only when using driver v0.1.7.

And that's what I can tell you. I know nothing about IDE hardware, the little I learned in order to be able to develop the original driver 10-ish years ago I forgot long since.

As I wrote here: https://www.msx.org/forum/msx-talk/openmsx/nextor-openmsx?pa... I didn't have any issues using the 0.1.7 in openMSX 16.0-rc1. But for some reason the 2nd partition on the slave device isn't "seen" by Nextor, i.e. there is no drive letter for it. Any idea why?

Por S0urceror

Master (221)

Imagen del S0urceror

20-08-2020, 13:03

konamiman wrote:

Has the base file you get generated a size of 112K?

Yes it has.

I just did a complete new clone from GitHub and tried again with the same result. I tracked it down to the fact that the DV_BANK variable stays 0x00 on position 0xFE in the base file. DV_BANK should be 0x07.

Somehow this version does not link right on my setup. Compilation gives no errors. The L80 command spits out 123 undefined globals. The old beta does build correctly without these errors.

Any clue?

Por sdsnatcher73

Enlighted (4459)

Imagen del sdsnatcher73

20-08-2020, 17:42

Manuel wrote:

As I wrote here: https://www.msx.org/forum/msx-talk/openmsx/nextor-openmsx?pa... I didn't have any issues using the 0.1.7 in openMSX 16.0-rc1. But for some reason the 2nd partition on the slave device isn't "seen" by Nextor, i.e. there is no drive letter for it. Any idea why?

Nextor not mounting anything other than the first partition is how it is implemented. An enhancement request to change this behavior exists.

Por S0urceror

Master (221)

Imagen del S0urceror

20-08-2020, 23:35

Found the issue.

If you git clone the repository on a Mac and compile it in a Windows VM then sometime M80 says %No END statement.
The reason it does that is because that it cannot find CR/LF pairs in the file.

Somehow GitHub converts everything to Unix style files at check in. With only LF (0x0A) to mark the end of lines. When you check it out on Mac this is kept the same. On Windows it converts it back to CR/LF. Only the latter is compatible with the M80 assembler.