Game Over !

A place to discuss general QL issues.
Post Reply
User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Game Over !

Post by polka »

:cry: Hi all ! Help ! :cry:

I believe that my Tetroid card for CF chips is dead ; it was sometimes momentarily "sick" over the last month, but now, it absolutely refuses to boot ; typical boot message :

Code: Select all

QUBIDE/QubATA Driver – V3.10BT(AH) 
Timing calibration >.......?<Done>
Detection >>.<Done>
QubATA driver started
Linking WIN1_ failed!
Miracle Systems       V1.37 @ 1984
  Trump Card              896K RAM
CARE/QJUMP  TK2.26   @ 1985
but sometimes it also said :

Code: Select all

QubIDE Not Found or GALs Error - Halted
or :

Code: Select all

Master failed
or :

Code: Select all

Unknown Faulty Device <ATA>

To be noted : anyway, the line

Code: Select all

Detection>>.<Done>
should instead say :

Code: Select all

Detection>>1<Done>

meaning that actually, no CF chip is seen by the card.

I have two QLs, both working perfectly (also with a Sandy SuperQboard). The malfunction of the Tetroid card first erratic is now permanent with both machines and with any of the four CF chips that I partitionned and used successfully (one 8Gb, one 1Gb and two 512Mb).

With the Habi disc image editor, I checked that all four CF chips are OK and their contents were not altered.

So, I suspect that the problem "might eventually" be a faulty soldering of the plug for the CF chips on the Tetroid circuit board ?

Do you think this could be repaired, or should I buy a new card ?

Thanks beforehand for your answers !

POLKa (I just noticed that I was a "Bent Pin Expansion Port" ???) :mrgreen:


May the FORTH be with you !
POLKa
Derek_Stewart
Font of All Knowledge
Posts: 3932
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Game Over !

Post by Derek_Stewart »

Hi,

If the fault is on the expansion board, I would talk to Tetroid to see if the card can be repaired.

Did you fix the bent pin on the expansion port, as this could contribute to the fault.
Last edited by Derek_Stewart on Tue Mar 12, 2024 4:25 pm, edited 1 time in total.


Regards,

Derek
User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Re: Game Over !

Post by polka »

Hi Derek !

Yes, thank you for your advice to talk with Tetroid.

However, the issue of my Tetroid is not a bent pin on the expansion port ; it was a joke : I noticed that (due to the number of my posts) I no longer was a "shuggy midrodrive" but now a "bent pin etc." . So I signed POLKa (bent etc.)

There are no bent pins neither on the connection from Tetroid to QL, nor from CF to Tetroid. I suspect that the surface soldering of the socket for the CF has (or has got because of my cf swappings) one or several faulty connections, that sometimes were OK sometimes NOT, but now always NOT. I must be something like that, because the card works OK apart that it behaves as if there were no cf card plugged in.

POLKa


May the FORTH be with you !
POLKa
RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Game Over !

Post by RWAP »

Tetroid (Vitaliy) will no doubt help you here and probably send a replacement.

From my experience with the DivIDE Plus interface for the ZX Spectrum, I have experienced issues where one of the pins in the CF slot gets pushed back due to a badly positioned hole in the CF card, and also problems with fake Sandisk CF cards (probably 80% of the ones you find nowadays on ebay) where they would either work for a short time and then stop working, or just not be recognised at all.

Even worse is that the PC format routines are not very good at clearing the boot sector fully


User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Re: Game Over !

Post by polka »

Hi Rich (and all) !

Following your advice, I contacted Vitalyi and will send him my card, and he will see if it could be repaired.

In the mean time I want to show to you all what I did with this hardware before it went down :

1/ My SETUPs

I tried different ways to partition the 8Gb CF chip, but with too big blocks and/or too large fats (ram resident !). Which tended to block the QL with (or without) "not enough memory" messages.

Finally, I did some tests with three smaller CF chips (one of 1Gb and two of 512Mb), and found my final choice of partition structure :
all to be of 40Mb with 2Kb blocksize which gave :
24 partitions on the 1Gb CF chip
12 partitions on the 512Mb CF chips

On the 8Gb CF chip, I decided to make 24 partitions like on the 1Gb chip and 7 900Mb - 32Kb blocks partitions, that I will try to use through direct/alien access (with the intent of swapping quickly stored images from and to the 32Kb screen ram).

Here are the automatic SETUP procedures that I wrote (for the 8Gb CF but easy to adapt to others CF sizes) :

Code: Select all

TK2_EXT : MODE 4

REM to make a partition Npart with given Size,SPB,Name$

 10 DEFine PROCedure MAKE_PART( Npart,Size,SPB,Name$ )
 20  WIN_FORMAT 11,SPB
 30  WIN_DISK "CREATE",1,Npart,Size
 40  WIN_DRIVE 1,1,Npart
 50  FORMAT "WIN1_" & Name$
 60  WIN_FORMAT 0 : DIR WIN1_
 70  WIN_CTRL 1,6 : WIN_DRIVE -1
 80 END DEFine MAKE_PART

REM First 1Gb is split into 24 40Mb/2Kb partitions

REM to make the first partition called GIRL

 90 DEFine PROCedure MAKE_GIRL
100  MAKE_PART 1,40,4,"GIRL"
110 END DEFine MAKE_GIRL

REM to make 5 partitions called BOY1 to BOY5

120 DEFine PROCedure MAKE_BOYS
130  FOR I = 1 TO 5
140   MAKE_PART 1+I,40,4,"BOY" & CHR$(48+I)
150  END FOR I
160 END DEFine MAKE_BOYS

REM to make 9 partitions called CAT1 to CAT9

170 DEFine PROCedure MAKE_CATS
180  FOR I = 1 TO 9
190   MAKE_PART 6+I,40,4,"CAT" & CHR$(48+I)
200  END FOR I
210 END DEFine MAKE_CATS

REM to make 9 partitions called DOG1 to DOG9

220 DEFine PROCedure MAKE_DOGS
230  FOR I = 1 TO 9
240   MAKE_PART 15+I,40,4,"DOG" & CHR$(48+I)
250  END FOR I
260 END DEFine MAKE_DOGS

REM Next 7Gb are split into 7 900Mb/32Kb partitions
REM called COW1 to COW9 (because much bigger)
REM The last tracks may define a 9Mb/2Kb "MILK" ;-)

270 DEFine PROCedure MAKE_COWS
280  FOR I = 1 TO 7
290   MAKE_PART 24+I,900,8,"COW" & CHR$(48+I)
300  END FOR I
310  MAKE_PART 32,9,4,"MILK"
320 END DEFine MAKE_COWS

REM to declare any (0 to 31) partition as WIN1_

330 DEFine PROCedure GAL(N)
340  WIN_DRIVE -1 : WIN_DRIVE 1,1,N+1
350 END DEFine GAL

REM to declare any (1 to 31) partition as WIN2_

360 DEFine PROCedure PET(N)
370  WIN_DRIVE 2 : WIN_DRIVE 2,1,N+1
380 END DEFine PET

REM to make all partitions and unzip into "MILK"
REM the content of Haoui's StarterKit floppy

390 DEFine PROCedure SETUP
400  WIN_DRIVE -1 : WIN_FORMAT 1 : REM to allow INIT etc.
410  WIN_DISK "SHOW"
420  WIN_DISK "INIT",1
430  WIN_DISK "DETAILS",1
440  MAKE_GIRL
450  MAKE_BOYS
460  MAKE_CATS
470  MAKE_DOGS
480  MAKE_COWS
490  WIN_DISK "SUMMARY",1
500  GAL 0 : PET 31 : REM change 31 if NO partition "MILK" !
510  COPY flp1_UNZIP_EXE to WIN2_ETC_UNZIP_EXE
520  COPY flp1_starter1_zip to WIN2_QubATA_STARTER1_ZIP
530  EW WIN2_ETC_UNZIP_EXE;"-d WIN2_ WIN2_QubATA_STARTER1_ZIP"
540 END DEFine SETUP
FIRST a short MAKE_PART procedure to factorize all the steps creating a partition : with a given number, a given size, a given blocksize code and a given name.

THEN several instanciation procedures :
MAKE_GIRL to create the #1 (boot) partition
MAKE_BOYS to create 5 BOYn partitions
MAKE_CATS to create 9 CATn partitions
MAKE_DOGS to create 9 DOGn partitions
All these partitions are 40Mb with 2Kb blocks (thus 80Kb fat)

FOR THE 8Gb CF I added :
MAKE_COWS to create 7 much bigger COWn partitions of 900Mb with 32Kb blocks, and a little MILK partition to use the remaining tracks.

FINALLY, there is a SETUP procedure that initialise the CF chip, calls all the instanciation procedures and unzips the Haoui Starter flp_ into the MILK partition : because I wanted to be able to decide where I want to put what.

BY THE WAY, I added also two little procedures :
PET n to change the partition linked to WIN2_
GAL n to change eventually the partition linked to WIN1_ (and unlink any partition linked to WIN2_ ; so after calling GAL, you have to call PET).
To be noted : I prefered to number GIRL as partition 0 !

May the FORTH (and SuperBasic) be with you !

POLKa


May the FORTH be with you !
POLKa
User avatar
1024MAK
Super Gold Card
Posts: 592
Joined: Sun Dec 11, 2011 1:16 am
Location: Looking forward to summer in Somerset, UK...

Re: Game Over !

Post by 1024MAK »

I see that you have got over your bent pin and have now gone brittle :mrgreen:

Mark


:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer in Somerset later in the year :)

QL, Falcon, Atari 520STFM, Atari 1040STE, more PC's than I care to count and an assortment of 8 bit micros (Sinclair and Acorn)(nearly forgot the Psion's)
User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Re: Game Over !

Post by polka »

2/ transferring all my 720Kb floppies into the two last partitions of my 1Gb CF card (DOG8 part.22 and DOG9 part.23)

This was done selecting the destination with PET n and using commands "WCOPY flp1_ to win2_Bi_Dj_" (i=1 to 8, and j=1 to 14); I had 8 boxes of 14 floppies to transfer, four into part.22 and four into part.23.

To have comprehensive directory lists that I could print, I developped the two following short SuperBasic procedures :

Code: Select all

100 DEFine PROCedure DSTAT(T$,D$)
110  OPEN_OVER#5,T$&"Pad"
120  WSTAT#5,D$
130  PRINT#5,"#####"
140  CLOSE#5
150  OPEN_IN#5,T$&"Pad"
160  OPEN_NEW#6,T$&"DIR_"&D$
170  PRINT#2,"Directory "&D$
180  PRINT#6,"Directory "&D$
190  REPeat item
200   INPUT#5,A$
210   IF A$="#####" THEN EXIT item
220   INPUT#5,B$
230   PRINT#2,B$(1 to 12)&"|  "&A$
240   PRINT#6,B$(1 to 12)&"|  "&A$
250  END REPeat item
260  CLOSE#6 : CLOSE#5
270 END DEFine DSTAT

280   DATA "_D1","_D2","_D3","_D4","_D5","_D6","_D7"
290   DATA "_D8","_D9","_DA","_DB","_DC","_DD","_DE","DONE !"

300 DEFine PROCedure BSTAT(P,B)
310  RESTORE 280
320  PET P
350  OPEN_NEW#6,"MDV1_DIR_P"&P&"_B"&B
360  PRINT#2,"PARTITION ";P;" Box ";B
370  PRINT#6,"PARTITION ";P;" Box ";B
380  REPeat ditem
390   READ N$
400   IF N$="DONE !" THEN EXIT ditem
410   OPEN_OVER#5,"MDV1_Pad"
420   WSTAT#5,"MDV2_B"&B&N$
430   PRINT#5,"#####"
440   CLOSE#5
450   OPEN_IN#5,"MDV1_Pad"
470   PRINT#2 : PRINT#2,"Floppy B"&B&N$
480   PRINT#6 : PRINT#6,"Floppy B"&B&N$
490   REPeat item
500    INPUT#5,A$
510    IF A$="#####" THEN EXIT item
520    INPUT#5,B$
530    PRINT#2,B$(1 to 12)&"|  "&A$
540    PRINT#6,B$(1 to 12)&"|  "&A$
550   END REPeat item
560   CLOSE#5
570  END REPeat ditem
580  CLOSE#6
590 END DEFine BSTAT
The firstprocedure, called "DSTAT T$,D$" will print a directory D$ into a text file named DIR_D$ , but :
It will do it through a scratchpad using "WSTAT T$", for extracting not only the file names but also the file sizes in the following format :

Code: Select all

Directory mdv1_
     51648  |  abacus
     24194  |  abba_hob
     52258  |  archive
     30720  |  archv_hob
      8960  |  asm68_bin
       801  |  a_txt
       931  |  boot
       533  |  C68_sub_menu
     63916  |  easel
     11136  |  editor_bin
     21730  |  forth
     53248  |  forth_scr
      1581  |  fstat_bas
     17408  |  graf_hob
 etc.

The second procedure called "BSTAT B,D" will do the same thing for all 14 disks saved in part. P as box B in the following format :

Code: Select all

PARTITION 22 Box 1

Floppy B1_D1
    285684  |  B1_D1_CPORT_zip
    148118  |  B1_D1_PERFPLUSSEMANUAL_zip
    292401  |  B1_D1_QM1_zip
      3182  |  B1_D1_ARCHDEVMANUAL_zip

Floppy B1_D2
      1740  |  B1_D2_DBANAL_zip
    228466  |  B1_D2_PP_zip
    141448  |  B1_D2_PUBTOOLBOX1_zip
    184137  |  B1_D2_PUBTOOLBOX2_zip
    174580  |  B1_D2_PUBTOOLBOX3CUT_zip

Floppy B1_D3
    124320  |  B1_D3_CT_zip
    130035  |  B1_D3_QM2ABA_zip
    118331  |  B1_D3_QM2_zip
    111650  |  B1_D3_TURBO_zip

etc.
That's all !

POLKa
May the FORTH and SuperBasic be with you !


May the FORTH be with you !
POLKa
User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Re: Game Over !

Post by polka »

Hi all ! game restarted.

Vitaliy kindly repaired my Tetroid card for CF chips and now, it works OK again.

In the mean time, as I have two QLs (one JM and one JS), I bought a second Tetroid card, this one with Minerva, to supplement my JM QL. So, by now I have 5 CF chips, two 8Gb one 1Gb and two 512MB, but unfortunately, they all have differing geometries, so that I cannot copy through Habi Image Manager from one to the other (however, I can backup and restore each chip as a whole - it takes a very long time, especially the 8Gb CFs !).

An option to copy whole partitions would have been nice, because I somehow normalized their size ans structure.

Because on all my CF chips I made up to 24 partitions of 40Mb with 4 sectors per block, and on the two 8Gb CF chips, I added 8 partitions of 840Mb with 64 sectors per block. But with the Habi software I can only extract-insert files.

A question about something that I did not dare to do by now : as the first partition (boot) contains a hidden partition table, what happens when I reformat (with the superbasic FORMAT) this first partition ? Is the partition table lost ?

May the FORTH be with you

POLKa


May the FORTH be with you !
POLKa
User avatar
polka
Trump Card
Posts: 196
Joined: Mon Mar 07, 2011 11:43 am

Re: Game Over !

Post by polka »

Answer to my own question : I tried and it is not possible to format the first partition ! All the other partitions may be formatted if prealably you passed the command "WIN_FORMAT 1" but not partition one. Forget not to pass the command "WIN_FORMAT 0" after using the QL FORMAT command.

May the FORTH be with you

POLKa


May the FORTH be with you !
POLKa
Post Reply