Minerva4Q68 SD Card Setup

The Thor, Aurora, Q40, Q60 & Q68 etc. are discussed here.
Post Reply
User avatar
ql_freak
Gold Card
Posts: 354
Joined: Sun Jan 18, 2015 1:29 am

Minerva4Q68 SD Card Setup

Post by ql_freak »

I wanted to test Minerva4Q68 but could not create a working SD card. My 32 GByte SD card is compatible with Q68. I have tested it with Q68_SMSQ.WIN from the original Q68 SD card (see below).

The problem is, that the Q68_??ROM.SYS files are >96 KByte and cannot be loaded into the ROM area. Therefore I copied the Q68_DEROM.SYS file to

Q68_RAM.SYS

on the FAT32 partition (as first file) and the QLWA.WIN file (see below) as the second file. But Minerva does not boot in this configuration. SMSQ/E does (see below). I have copied the (on Q68) formatted QLWA.WIN file back to my PC and prepared another card with this (Q68 formatted) QLWA.WIN container file. With Minerva (copied Q68_DERAM.SYS to the FAT32 partition as Q68_RAM.SYS) it does not boot. With Q68_SMSQ.WIN and this QLWA.WIN container it works and the QLWA.WIN container is accessible on the Q68 (when booted with the Q68_SMSQ.WIN) without formatting on Q68.

Question: What am I doing wrong?


Preparing the SD card (SMSQ/E):
I copied Q68_SMSQ.WIN from the original Q68 SD card to the FAT32 partition of the SD card as first file and and QLWA.WIN file as second file. I have prepared the QLWA.WIN file on Windows with the following PowerShell command:

> fsutil file createnew QLWA.WIN 4294966272

(4294966272 is 4*1024*1024*1024-1024 i.e. 1 KByte less than 4 GByte)
I then prepared the card on Q68 with

WIN_DRIVE 1,1,'QLWA.WIN'
WIN_FORMAT 1
FORMAT 'WIN1_QLWA4GB'

Afterward WIN1_ is accessible.


http://peter-sulzer.bplaced.net
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX :-)
User avatar
XorA
Site Admin
Posts: 1368
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: Minerva4Q68 SD Card Setup

Post by XorA »

The problem is, that the Q68_??ROM.SYS files are >96 KByte and cannot be loaded into the ROM area. Therefore I copied the Q68_DEROM.SYS file to
The ROM area is 96K on Q68 check the manual!


User avatar
XorA
Site Admin
Posts: 1368
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: Minerva4Q68 SD Card Setup

Post by XorA »

Code: Select all

➜  Minerva4Q68 git:(master) stat Q68_DEROM.SYS 
  File: Q68_DEROM.SYS
  Size: 98304     	Blocks: 192        IO Block: 4096   regular file
Device: 0,37	Inode: 10489178    Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/  graeme)   Gid: ( 1000/  graeme)
Context: system_u:object_r:user_home_t:s0
Access: 2023-05-30 11:34:18.706376033 +0100
Modify: 2023-05-30 11:34:13.457609999 +0100
Change: 2023-05-30 11:34:13.457609999 +0100
 Birth: 2023-05-30 11:34:13.456610044 +0100
And the files are exactly 96k as shown above!


Derek_Stewart
Font of All Knowledge
Posts: 3975
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Minerva4Q68 SD Card Setup

Post by Derek_Stewart »

Hi,

I downloaded the most recent copy of Minerva4Q68, which has not changed since the last time I downloaded it.

I renamed the file Q68_UKROM.SYS to Q68_ROM.SYS and copied it onto a SDHC Card with a FAT32 partition of 3Gb, along with the QLWA.WIN file from the Q68 Distribution.

I have 4 Q68 computers waiting for shipping, so I tried the SD Card on each one.

Minerva booted up off the SD CARD before my monitor initialised and tried to boot from WIN1 which in the Minerva ROM file is defined as QLWA.WIN. But stopped on the first line,as Minerva4Q68 does not have Toolkit 2 installed.

I also tried copying to the FAT32 partition the Qubide file from QL-SD v1, which was named as QL_BDI.BIN and mapped to QUB1, after boot up, I was able to do: DIR QUB1_

The defaults for Minerva are in config blocks which can be changed with CONFIG or MENUCONFIG.

The Minerva ROM file should be loaded as a RAM file as this does not get loaded into ROM are for the Q68.

The Q68 manual supplied on the SD Card, defines all the required filenames, here is an extert from Section 3 Page 2
Q68 Manual Section 3 Page 2 wrote: Booting from ROM image
If a file named „Q68_ROM.SYS“ is present on the SDHC card, it will be loaded at address $0 to the Q68
ROM emulation area. The maximum allowed ROM length is 96 KB. If the file is present, but too long, an
error message will be printed and booting from serial port will be attempted.
After the ROM image was loaded, the CPU will automatically be restarted by a 68000 hardware reset.
Therefore, like a physical ROM, the image file must contain the 68000 vector table, especially the initial
supervisor stackpointer at address 0 and the initial program sounter at address 4.

Booting from RAM image
If a file named „Q68_RAM.SYS“ is present on the SDHC card, it will be loaded at hexadecimal address
$30000 to the Q68 RAM. There is no length limititation except the amount of avaliable RAM.
After the RAM image was loaded, the CPU jumps directly to the code at hexadecimal address $32000 in
supervisor mode. No reset is performed, the CPU registers are not initialilized, and the ROM area is not
changed. If an operating system is booted from RAM image, it's code has to do all initializations or chan-
ges or of the vector table by itself.

Booting from SMSQ/E filesystem
If a file named „Q68_SMSQ.WIN“ is present on the SDHC card, the Q68 will at first check whether it con-
tains a valid SMSQ/E filesystem image. If successful, the Q68 will then look up the first file inside the root
directory of this SMSQ/E filesystem image. It will then load the contents of this „inner“ file at hexadecimal
address $32000 into RAM. Booting then continues like directly from RAM image.
As for the creation of the QWA file, I would not use Powershell to create a file then format it in the Q68.

If you has read the Q68 SMSQ/E manual on the SD Card, there are commands to access the FAT32 partition, which allow listing of files and creation of a QWA file, using the CARD_CREATE command.
Q68 SMSQ/E Manual wrote: 8.4.4 CARD_CREATE
Allows creation of a file in the FAT32 file system of the first partition on a card. Remember,
this partition must be a FAT32 partition. There must be a an empty slot for this file within
the first 16 entries in the root directory of this partition (which you can check with
CARD_DIR$).
Syntax : CARD_CREATE card, size, file_name$
where
• card is the card on which the file is to be created (1 or 2).
• size is the size, in MiB, of the file to be created. For the time being, this cannot be
more than 16 GiB in most cases (see below, note 1).
• file_name is the name of the file to be created**. This must obey the “8.3 rule”. It is
recommended (but not necessary) that the name be within quotes.
The content of the file thus created is not “nulled”. It may contain random bytes.
Error returns
Q68 Manual – p. 25
But I use SMSQmulator or QPC2 to create the QWA file and copy required file to the QWA file, then copy the file QLWA.WIN to the FAT32 partition.

I suppose if you want to flexible, the file name of the QWA file(s) can be anything required, just change the CONFIG blocks in SMSQ/E or Minerva to suit.

Also the QWA file for each WIN drive can be changed by using the WIN_DRIVE command, which was the point of the demo boot file to run Black Phoenix or QL/E from their own QWA file.


Regards,

Derek
User avatar
ql_freak
Gold Card
Posts: 354
Joined: Sun Jan 18, 2015 1:29 am

Re: Minerva4Q68 SD Card Setup

Post by ql_freak »

XorA wrote: Tue May 30, 2023 11:35 am

Code: Select all

➜  Minerva4Q68 git:(master) stat Q68_DEROM.SYS 
  File: Q68_DEROM.SYS
  Size: 98304     	Blocks: 192        IO Block: 4096   regular file
 ...
And the files are exactly 96k as shown above!
Thank You. It was my fault when downloading from GitHub. I right clicked the file and in the context menu clicked on Save Link As.... In this case the downloaded file has a size of 137 KBytes. With a left click on the file and then click on the button Download the file has a size of 96 KByte :-) When I rename the file to Q68_ROM.SYS and copy it to the SD card, Minerva boots :-)


http://peter-sulzer.bplaced.net
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX :-)
User avatar
janbredenbeek
Super Gold Card
Posts: 633
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: Minerva4Q68 SD Card Setup

Post by janbredenbeek »

You might want to try a ROM from my working branch (https://github.com/janbredenbeek/Minerv ... ee/working) which has the keyboard and SD-card driver combined into one 32K ROM extension, which leaves room for another 16K extension ROM (hence, these ROM images are 80K instead of 96K, so you can append a TKII ROM and have TKII ready on boot).

There is also a small 32-byte loader Min4Q68ldr.bin which can be used to boot Minerva from SMSQ/E so you don't need a separate SD card to boot Minerva.

All instructions are in the README.md file.

(Yes, I should probably have merged this branch to the Master branch almost two years ago as I think it's stable. Then I could pick up the work for more ambitious things like adapting the display driver to allow for hi-res modes ;) )


User avatar
Peter
Font of All Knowledge
Posts: 2009
Joined: Sat Jan 22, 2011 8:47 am

Re: Minerva4Q68 SD Card Setup

Post by Peter »

janbredenbeek wrote: Sun Jun 04, 2023 12:48 am There is also a small 32-byte loader Min4Q68ldr.bin which can be used to boot Minerva from SMSQ/E so you don't need a separate SD card to boot Minerva.
Very nice, I wasn't aware of that...
janbredenbeek wrote: Sun Jun 04, 2023 12:48 am ( [...] Then I could pick up the work for more ambitious things like adapting the display driver to allow for hi-res modes ;) )
Very ambitious indeed. During the time when SMSQ/E was still proprietary, I was looking for a solution like that for the Q60.
But found Minerva with highcolor so far beyond our possibilities that I went for a C language based GUI, called QLPUI, demo at http://www.terdina.net/ql/software.html.
On a 68060 or Qemulator QLPUI worked quite nicely. But the Q68 hardware is relatively slow, and "QL style" highcolor support for Minerva would be so much nicer.
Great respect for targeting that!


User avatar
janbredenbeek
Super Gold Card
Posts: 633
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: Minerva4Q68 SD Card Setup

Post by janbredenbeek »

Peter wrote: Mon Jun 05, 2023 2:47 pm
janbredenbeek wrote: Sun Jun 04, 2023 12:48 am There is also a small 32-byte loader Min4Q68ldr.bin which can be used to boot Minerva from SMSQ/E so you don't need a separate SD card to boot Minerva.
Very nice, I wasn't aware of that...
It's actually quite simple. Just go to supervisor mode, disable interrupts, copy the ROM code to base RAM and jump to the start vector.
I'm not sure about proper hardware initialisation though as that has already been done by SMSQ/E so it's not really a cold boot...
janbredenbeek wrote: Sun Jun 04, 2023 12:48 am ( [...] Then I could pick up the work for more ambitious things like adapting the display driver to allow for hi-res modes ;) )
Very ambitious indeed. During the time when SMSQ/E was still proprietary, I was looking for a solution like that for the Q60.
But found Minerva with highcolor so far beyond our possibilities that I went for a C language based GUI, called QLPUI, demo at http://www.terdina.net/ql/software.html.
On a 68060 or Qemulator QLPUI worked quite nicely. But the Q68 hardware is relatively slow, and "QL style" highcolor support for Minerva would be so much nicer.
Great respect for targeting that!
It would be too much work to completely rewrite the Minerva driver for high colour support. There is also the Pointer Interface which I believe does not support high colour in its standalone form.
I believe the 1024x768x4 mode (4) support would be possible without too much effort as this does work on sQLux. As it is bit compatible with BBQL screen the only things that have to be modified are the screen base address and the window size parameters. This could be done by an extension driver which hooks on to the existing one and could be located in the 32K extension ROM area where the keyboard and SD-card driver reside (there is about 10K free there), so the base Minerva code remains compatible with BBQL.

Jan


Derek_Stewart
Font of All Knowledge
Posts: 3975
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Minerva4Q68 SD Card Setup

Post by Derek_Stewart »

HI Jan,

I mainly use Mode 33:512x384, Mode4: 1024,512 for either high colour of high resolution on the Q68. Fits most of my needs.


Regards,

Derek
User avatar
janbredenbeek
Super Gold Card
Posts: 633
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: Minerva4Q68 SD Card Setup

Post by janbredenbeek »

Derek_Stewart wrote: Tue Jun 06, 2023 8:38 am I mainly use Mode 33:512x384, Mode4: 1024,512 for either high colour of high resolution on the Q68. Fits most of my needs.
These are most ideal for PC monitors as the aspect ratio is 4:3 (AFAIK Mode 4 is 1024x768, not 1024x512). Will probably look good on 16:9 and 5:4 monitors too. 512x256 and 1024x512 looks too vertically stretched on my old 5:4 LCD screen.

I find 512x384x65536 a bit slow and 1024x768x4 has very tiny characters which my old eyes have trouble reading. One idea would be to downscale 1024x768 to 512x384 as an option (On QPC2 I mostly use 1280x960 scaled by a factor 2 so the QL screen is 640x480).


Post Reply