Disketten-Schreibschutz

Moderatoren: Sleeπ, andymanone

Antworten
Benutzeravatar
Kveldulfur
Beiträge: 624
Registriert: 17.08.2021 02:32
Has thanked: 237 times
Been thanked: 163 times
Kontaktdaten:

Disketten-Schreibschutz

Beitrag von Kveldulfur »

Hallo!

Man kann beim FujiNet angeben, dass ein ATR nur gelesen oder auch beschrieben werden darf.
Jedoch scheint die Einstellung "nur lesen" nicht das gleiche zu sein, als wenn man eine schreibgeschützte Diskette verwendet.
Der ATARI scheint den Schreibschutz nicht als solches zu erkennen.
Im Emulator Altirra ist dies anders.

Im konkreten Fall:
Ich besitze das Spiel Schreckenstein. Der Einfacherhaltshalber habe ich mir ein ATR besorgt, um dies Spiel über FujiNet laden zu können.
Das Spiel funktioniert nicht korrekt, da der Schreibschutz nicht erkannt wird. Unter Altirra mit eingeschalteten Schreibschutz funktioniert das ATR ohne Probleme.

Fehlt hier im FujiNet eine Funktion oder habe ich diese nur noch nicht gefunden?

Grüße
Janko

tschak909
Beiträge: 200
Registriert: 17.08.2021 00:22
Has thanked: 4 times
Been thanked: 138 times
Kontaktdaten:

Re: Disketten-Schreibschutz

Beitrag von tschak909 »

I'm guessing SIO ERROR isn't being emitted when a write request is being done to a disk mounted as read-only.

-Thom

Benutzeravatar
Kveldulfur
Beiträge: 624
Registriert: 17.08.2021 02:32
Has thanked: 237 times
Been thanked: 163 times
Kontaktdaten:

Re: Disketten-Schreibschutz

Beitrag von Kveldulfur »

Hallo!

Vielen Dank für die schnelle Antwort.
Wird die Funktion möglicherweise in Zukunft integriert werden?

Thank you very much for the quick answer.
Will the function possibly be integrated in the future?

Grüße
Janko

tschak909
Beiträge: 200
Registriert: 17.08.2021 00:22
Has thanked: 4 times
Been thanked: 138 times
Kontaktdaten:

Re: Disketten-Schreibschutz

Beitrag von tschak909 »

I am swamped with work on bringing FujiNet to other 8-bit platforms.

Would be nice for someone else to try and fix this.

But I suspect the fix would be simple enough, and could be attached in here:
https://github.com/FujiNetWIFI/fujinet- ... sk.cpp#L63

The _disk pointer has enough information to check if it's mounted read-only.

-Thom

Online
Benutzeravatar
DjayBee
Beiträge: 624
Registriert: 17.08.2021 04:02
Has thanked: 384 times
Been thanked: 175 times
Kontaktdaten:

Re: Disketten-Schreibschutz

Beitrag von DjayBee »

tschak909 hat geschrieben:
30.10.2021 06:13
Would be nice for someone else to try and fix this.

But I suspect the fix would be simple enough, and could be attached in here:
https://github.com/FujiNetWIFI/fujinet- ... sk.cpp#L63

The _disk pointer has enough information to check if it's mounted read-only.
Unfortunately I am only a hacker but no good coder.

The location you are pointing to is (from what I understand) only the code which writes to disk. This certainly should fail if the disk is write-protected.

BUT the SIO disk status (DCOMND=$53) must also always(!) reflect the current status of write-protection.
As soon as a write-protected disk has been inserted, this flag must go to 1:

Code: Alles auswählen

void sioDisk::sio_status()

    /* STATUS BYTES
    #0 - Drive status
      Bit 3 = 1: Failed due to write protected disk
Write-protection means:
* the mount type in CONFIG
* OR bit 0 =1 of the ATR header's 16th byte (APE definition)
* OR bit 0 =1 of the ATR header's 9th byte (Nick Kennedy's definition)

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast