Boot from external DD

Page 2/2
1 |

By Tisse

Resident (34)

Tisse's picture

19-12-2022, 13:46

gdx wrote:

Replace 3A E5 FB CB 4F 28 05 by 3A E7 FB CB 7F 20 05 at 03FE4h.

Gah! It's so close now! That code made b: the active drive if I hold B, but it won't autoboot from the disk in the second drive. So I get to diskbasic, and if I type files, it lists the files on the disk in B:.

By gdx

Enlighted (6215)

gdx's picture

19-12-2022, 13:53

Earlier you didn't say that it works?

By Tisse

Resident (34)

Tisse's picture

19-12-2022, 14:19

gdx wrote:

Earlier you didn't say that it works?

Sorry for being a bit unclear. It's like this:

Using 22 AB F6 F5 3A E5 FB CB 4F 28 05 3E 01 32 47 F2 F1 C9
Normal boot -> B: active drive, executes autoexec.bas from B: if disk is present on boot
Holding 1 -> A: active drive, executes autoexec.bas from A: if disk is present on boot

Using 22 AB F6 F5 3A E7 FB CB 7F 20 05 3E 01 32 47 F2 F1 C9
Normal boot -> A: active drive, executes autoexec.bas from A: if disk is present on boot
Holding B -> B: active drive, doesn't executes autoexec.bas from B: even if disk is present on boot (instead boots to basic where the command FILES will list the content on bSmile

By Tisse

Resident (34)

Tisse's picture

19-12-2022, 14:57

Really sorry - i must have missed to test if B: autobooted the first time, because I can't get it to do it now.

So this is where we are right now:

Using 22 AB F6 F5 3A E5 FB CB 4F 28 05 3E 01 32 47 F2 F1 C9
Normal boot -> B: active drive, doesn't executes autoexec.bas from B: even if disk is present on boot (instead boots to basic where the command FILES will list the content on B )
Holding 1 -> A: active drive, executes autoexec.bas from A: if disk is present on boot

Using 22 AB F6 F5 3A E7 FB CB 7F 20 05 3E 01 32 47 F2 F1 C9
Normal boot -> A: active drive, executes autoexec.bas from A: if disk is present on boot
Holding B -> B: active drive, doesn't executes autoexec.bas from B: even if disk is present on boot (instead boots to basic where the command FILES will list the content on B )

By Tisse

Resident (34)

Tisse's picture

19-12-2022, 16:02

Tisse wrote:

Really sorry - i must have missed to test if B: autobooted the first time, because I can't get it to do it now.

So this is where we are right now:

Using 22 AB F6 F5 3A E5 FB CB 4F 28 05 3E 01 32 47 F2 F1 C9
Normal boot -> B: active drive, doesn't executes autoexec.bas from B: even if disk is present on boot (instead boots to basic where the command FILES will list the content on B )
Holding 1 -> A: active drive, executes autoexec.bas from A: if disk is present on boot

Using 22 AB F6 F5 3A E7 FB CB 7F 20 05 3E 01 32 47 F2 F1 C9
Normal boot -> A: active drive, executes autoexec.bas from A: if disk is present on boot
Holding B -> B: active drive, doesn't executes autoexec.bas from B: even if disk is present on boot (instead boots to basic where the command FILES will list the content on B )

Update 2: Ok, now I feel a little stupid, because it actually DO load up autoexec.bas from disks that have a file with that filename. However it seems that it does not boot up other autobooting disks that doesn't have a file called autoexec.bas on it. For example a disk with msx-dos doesn't boot.

Update 3: When B is set as active and another disk is in A: it seems to autoboot from some special loaders on the disk in B: but they come to a halt, probably for trying to read from A: instead of B:
Maybe this is hardcoded in the loaders and can't be fixed? But it is a bit weird that the loaders on B: only try to load if there is a disk present in A:, isn't it?

By gdx

Enlighted (6215)

gdx's picture

20-12-2022, 02:01

Tisse wrote:

Maybe this is hardcoded in the loaders and can't be fixed?

If the software selects the A: drive instead of the current drive, this trick does not work. The best is to put a toggle switch that reverses the two drives like below.


https://www.ebay.com/itm/314245973744
https://www.ebay.com/itm/384210542719

By Tisse

Resident (34)

Tisse's picture

20-12-2022, 09:15

Thanks for all your help! Even if the code only autoboots with autoexec.bas-files, I still don't see any downside to using this diskrom instead of my old one - much easier to swap the active drive by just holding B on startup than having to type POKE &HF247,1 every time I want to access a disk from it.
I'm going to try to find out a bit more about how MSX access boot-loaders to see if there could be any workarounds using the ROM-method. But I will make a new thread about that.

gdx wrote:

If the software selects the A: drive instead of the current drive, this trick does not work. The best is to put a toggle switch that reverses the two drives like below.

Yes, a switch would definitely work. But I don't know where to solder the the wires in my SVI 738...

By gdx

Enlighted (6215)

gdx's picture

20-12-2022, 11:07

You can probably make an adapter. On the other hand, it is necessary at least to make a hole to fix the switch.

By Tisse

Resident (34)

Tisse's picture

20-12-2022, 14:45

gdx wrote:

You can probably make an adapter. On the other hand, it is necessary at least to make a hole to fix the switch.

On the SVI 738 you actually don't need to drill a hole (I don't like doing irreversible modifications) - you can get a small switch that is not very wide, but quite long and hotglue it from the inside, and make the switch go out from between the ventilation holes on the left. I've already placed a reset button on my computer this way :-)

But I'm beginning to question if I really need full boot support from external drive. My SVI 787 only has a 360kb drive, and most programs and games that can be fitted into a single sided disk seem to use basic-files, so the disk-rom-method will probably be enough for me.

Page 2/2
1 |