I dont know who needs this, but I have found many places and forums where the question has been asked but not satisfactory answered.
How to correctly reformat a Compact Flash-Card(CF-Card)
for the Psion 5(mx) without windows XP or prior, i.e on Linux.
This will work if you accidentally, reformated it to the wrong file system or renamed it from a computer and not on the Psion it self. Why this is an issue I don’t know, there are other interesting quirks with the psion and the CF-Card filesystem but we will get to that after the guide.
Note:
The CF-Card can be no larger than 2GB. All commands in this guide will be preceded by Command: , and example of the output from that command will be preceded by Output:
You can do this whole operation on a live USB disk, in case you don’t want or have Linux installed.
Open a terminal if you haven’t already, now would be a good time to plug your CF-Card into your computer, through an adapter or directly into your CF-Card reader.
Now we want to identify our CF-Card and make a note of the name it has in /dev.
Type:
Command: lsblk
Output:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 1 16M 0 disk └─sda1 8:1 1 16M 0 part /media/user/USB-DRIVE sdb 8:16 1 0B 0 disk sdc 8:32 1 0B 0 disk nvme0n1 259:0 0 1,9T 0 disk ├─nvme0n1p1 259:1 0 1M 0 part ├─nvme0n1p2 259:2 0 513M 0 part /boot/efi └─nvme0n1p3 259:3 0 1,9T 0 part /
So as long as you know the size of you CF-Card its easy to identify what device it is. In this case it is sda. sda1 is a partition on the device, we will be removing this and or any pre-existing partitions in the comming steps. First we need to unmount any partition on our CF-Card that is, or has been, mounted. We can refer to the output above to identify the partition we need to unmount. Under the column MOUNTPOINTS we can see all mounted partitions on our system and their mountpoints, hence the name of the column. so in this case it is “sda1”, that is under “sda”. because it is mounted at /media/user/USB-DRIVE.
Type:
Command: sudo umount /dev/sda1
You will now be asked to type in your password, do that and press ENTER. Unless you typed the command or password wrong you should just get a new line with:
yourusername@yourcomputer:~$
Next we are going to use “fdisk”. Type:
Command: sudo fdisk /dev/sda
Output:
Welcome to fdisk (util-linux 2.39.3). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help):
we are now “in” the fdisk program and can ask it to do things by giving it commands. for example press “m” followed by ENTER, to see a list of possible commands. First we want to remove any pre existing partitions.
Type:
Command: d
Output:
Command (m for help): d Selected partition 1 Partition 1 has been deleted. Command (m for help):
Then we have to create a new empty MBR(DOS) partition table
Type:
Command: o
Output:
Command (m for help): o Created a new DOS (MBR) disklabel with disk identifier 0x9f0e8a9c. Command (m for help):
And now we are ready to create a new partition that can be read by the Psion.
Type:
Command: n
Output:
Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p):
Choose primary, ENTER to continue
Output:
Uses the default answer p. Partition number (1-4, default value 1):
Type: 1 and press enter. this will create the partition sda1
Output:
First sector (2048-XXXXXXXXX, default value 2048):
Press enter to continue, cause we want the partition to start at the first sector.
Output:
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-XXXXXXXXX, default value XXXXXXXXX):
Now we will choose the size of out partition, unless you want to make more than one partition you can just press ENTER here as well.
otherwise you can specify the size my tying + followed by the size and lastly if it is in K(Kilobytes), M(Megabytes), etc.
something like this +16M
and then ENTER.
Output:
Created a new partition 1 of type "Linux" with size 16 MB. Partition #1 contains a vfat signature. Do you want to remove the signature? [Y]es/[N]o:
We are goint to specify that it is a Vfat 16 in the next step so I don’t think the answer to this question really matters, but choose No and press ENTER. But before we do that we need to make it Bootable.
Type:
Command: a
Output:
Command (m for help): a Selected partition 1 The bootability flag for partition 1 is now enabled. Command (m for help):
Now its time to make this partition FAT16, wich is what the Psion 5 and Psion 5mx requires.
Type:
Command: t
Output:
Command (m for help): t Selected partition 1 Hex code or alias (type L to list all):
Type: 4 and press ENTER
Output:
Changed partition type "Linux" to "FAT16 <32M". Command (m for help):
We can now type p
to check that everything looks correct or w
(followed by ENTER of course) to write the partition table to the disk.
and q
to quit fdisk.
You can use lsblk
to double check that the CF-Card is not mounted before removing it from computer, but it shouldn’t be.
Or why not mount it and copy over PsionDoom(github.com/doomhack/PsionDoom/releases/tag/0.2) and frag some monsters.
Some interesting discoveries: So apparently if you write any changes to the CF-Card from the Psion, like editing and saving a text file or creating a new folder on the Psion. All the files and folders will be “write protected” the next time you mount the CF-Card on your Linux system. But the same issue does not occur if you mount it on WinXP, I don’t know why, yet. but at least now you can move files two your Psion 5mx and use your additional storage space.
Hope you found this guide helpful and easy to follow along with.
supersquirrel@sopuli.xyz 1 day ago
I have no clue, maybe nobody, but also… maybe lots of people! The great thing about the “threadiverse” is that this post can now float around bouncing off different servers and it gives your writeup the best chance of meeting somebody who will find it useful.
foliumcreations@lemmy.world 1 day ago
I hope It helps someone. And I agree the “threadiverse” is a marvelous thing.