diff --git a/src/analyze.a b/src/analyze.a index eba6633..750fc3e 100755 --- a/src/analyze.a +++ b/src/analyze.a @@ -378,14 +378,12 @@ b4bbcompare ldx #$01 ; track ;;ldy #$00 ; sector .all - stx gTrack - sty gSector lda #$00 sta gAddress lda #$0C adc #BASEPAGE sta gAddress+1 - jsr ReadSector ; read sector so we can look for 'JMP $B4BB' marker + jsr ReadSectorXY ; read sector so we can look for 'JMP $B4BB' marker bcs _b4bbexit lda #$0C ldx #$84 @@ -400,14 +398,17 @@ b4bbcompare .dos32b ldy #$09 ; sector .allb - stx gTrack - sty gSector - jsr ReadSector ; read sector to get address prologue 3 for rest of disk + jsr ReadSectorXY ; read sector to get address prologue 1 for rest of disk bcs _b4bbexit lda #$0C adc #BASEPAGE sta x0+2 x0 lda $FFC2 ; high byte modified at runtime (above) + cmp #$D5 ; some disks lie and manually set the prologue later + bne b4bbmodify ; passport-test-suite/SocMate Analogies Games.woz [Z=1] here + lda #TRUE + sta gPossibleB4BBBasic + lda #$BB b4bbmodify sta $FFFF ; modified at runtime (high byte in Inspect1, low byte above) lda #$DE @@ -518,12 +519,10 @@ xHarvey ldx #$00 stx gAddress inx - stx gTrack - inx - stx gSector - ldx #$09 - stx gAddress+1 - jsr ReadSector ; read T01S01 into $900 + ldy #$02 + lda #$09 + sta gAddress+1 + jsr ReadSectorXY ; read T01,S02 into $0900 bcs .exit lda #$09 ldx #$32 diff --git a/src/apicode.a b/src/apicode.a index bec22ad..57ed524 100644 --- a/src/apicode.a +++ b/src/apicode.a @@ -68,6 +68,10 @@ ; set in IDBootloader() after reading T00,S00 FIRSTFILTER +;gPossibleB4BBBasic + !byte FALSE ; 0=true, 1=false + ; reset before each operation + ; set in xB4BB() after tracing DOS 3.3-shaped RWTS ;gPossibleWoodbury !byte FALSE ; 0=true, 1=false ; reset before each operation diff --git a/src/apidefs.a b/src/apidefs.a index 9f9f309..b5ff65c 100644 --- a/src/apidefs.a +++ b/src/apidefs.a @@ -115,9 +115,10 @@ gIsDiversi = gIsPhoenix-$01 ; byte gIsTSR = gIsDiversi-$01 ; byte gPossibleMECCSwapper = gIsTSR-$01 ; byte gPossibleWoodbury = gPossibleMECCSwapper-$01 ; byte +gPossibleB4BBBasic = gPossibleWoodbury-$01 ; byte ;LASTFILTER ; add new gIs* above this line ;gIsInfocom18 is a special case whose ID is not in the regular inspection path -gIsInfocom18 = gPossibleWoodbury-$01 ; byte +gIsInfocom18 = gPossibleB4BBBasic-$01 ; byte ;gIs13Sector is a special case whose ID is not in the regular inspection path gIs13Sector = gIsInfocom18-$01 ; byte ;gMECCFastloadType is a special case integer whose default value cannot be #FALSE diff --git a/src/id/milliken.a b/src/id/milliken.a index 97c137d..21e98fc 100644 --- a/src/id/milliken.a +++ b/src/id/milliken.a @@ -16,14 +16,13 @@ IDMilliken ; already identified a marker on T00,S01 that strongly ; suggests the presence of this routine, so it's worth ; doing an extra disk read here to be sure) - lda #$00 - sta gTrack - lda #$0A - sta gSector + ldx #$00 + ldy #$0A + tya clc adc #BASEPAGE sta gAddress+1 - jsr ReadSector + jsr ReadSectorXY bcs .exit IDMilliken1 diff --git a/src/id/volumename.a b/src/id/volumename.a index 8abf0f3..f19659c 100644 --- a/src/id/volumename.a +++ b/src/id/volumename.a @@ -15,17 +15,16 @@ !zone { IDVolumeName ; read T00,S0B (volume key block) - lda #$00 - sta gTrack - sta cmp1 - lda #$0B - sta gSector + ldx #$00 + stx cmp1 + ldy #$0B + tya sta gDisplayBytes clc adc #BASEPAGE sta gAddress+1 sta cmp1+1 - jsr ReadSector + jsr ReadSectorXY bcs .error lda gIsPascal diff --git a/src/passport.a b/src/passport.a index 1ba5842..54b6275 100755 --- a/src/passport.a +++ b/src/passport.a @@ -814,6 +814,7 @@ _applyToAll !source "patchers/tsr.a" ; T04 && gIsTSR only !source "patchers/woodbury.a" ; gPossibleWoodbury only !source "patchers/leisure.a" ; gIsProDOS && T22 only + !source "patchers/b4bbbasic.a" ; gPossibleB4BBBasic only .checkPatchCount lda gPatchCount diff --git a/src/patchers/b4bbbasic.a b/src/patchers/b4bbbasic.a new file mode 100644 index 0000000..5bf2f75 --- /dev/null +++ b/src/patchers/b4bbbasic.a @@ -0,0 +1,19 @@ +;------------------------------- +; #B4BBBASIC +; RWTS swapper in BASIC +; +; tested on +; - SocMate Analogies Games +;------------------------------- + lda gPossibleB4BBBasic + bne + + + ldy #$07 + jsr SearchTrack + !byte $B9,$34,$37,$34 ; 'POKE 47445,' in Applesoft BASIC (POKE opcode is $B9) + !byte $34,$35,$2C + bcs + ; passport-test-suite/SocMate Analogies Games.woz [C=0] matches + ldy #$01 + jsr modify + !byte $B2 ; change POKE opcode to REM ++ diff --git a/src/rwts.a b/src/rwts.a index 1a8dcc2..149e834 100755 --- a/src/rwts.a +++ b/src/rwts.a @@ -8,6 +8,9 @@ ; C clear if read was successful ; C set if read failed ;------------------------------- +ReadSectorXY + stx gTrack + sty gSector ReadSector ; ; Lots of custom RWTS routines need these zero page locations diff --git a/src/strings/en.a b/src/strings/en.a index cf6dc67..8984520 100755 --- a/src/strings/en.a +++ b/src/strings/en.a @@ -338,7 +338,7 @@ StringTableHigh .passport !text "Passport ",$00 .header - !text "@",s_passport,"by 4am@",s_space7,"@",s_space7," 2021-04-18",$00 + !text "@",s_passport,"by 4am@",s_space7,"@",s_space7," 2021-04-19",$00 .bar9 !text "_________",$00 .bar18 diff --git a/src/strings/fi.a b/src/strings/fi.a deleted file mode 100755 index 7d77291..0000000 --- a/src/strings/fi.a +++ /dev/null @@ -1,349 +0,0 @@ -* Finnish translation by Jorma Honkanen -* -* Main menu keys -* (should match the text in :mainmenu below) -* (these are NOT case-sensitive) -* -k_verify = "T" -k_demuffin = "M" -k_crack = "P" -k_slot = "S" -k_quit = "L" -* will also quit - -* Verify = T/arkista -* Demuffin = M/uunna levyke -* Crack = P/oista suojaus -* Slot = Liitin, Slot - but not to be changed! -* Quit = L/opeta - -* -* String IDs -* (pass in accumulator to PrintByID) -* -s_header = $00 -s_mainmenu = $01 -s_progbar = $02 -s_reading = $03 -s_diskrwts = $04 -s_bb00 = $05 -s_sunburst = $06 -s_optimum = $07 -s_builtin = $08 -s_switch = $09 -s_writing = $0A -s_unformat = $0B -s_f7 = $0C -s_sync = $0D -s_optbad = $0E -s_pass = $0F -s_passdemuf = $10 -s_passcrack = $11 -s_passcrack0 = $12 -s_fail = $13 -s_fatal0000 = $14 -s_fatal220f = $15 -s_done = $16 -s_noslot6 = $17 -s_writeerr = $18 -s_writeioerr = $19 -s_writenodev = $1A -s_writeprot = $1B -s_othermli = $1C -s_canttrace = $1D -s_canceled = $1E -s_bademu = $1F -s_reset = $20 -s_modify = $21 -s_modifyto = $22 -s_dosb0 = $23 -s_prodosb0 = $24 -s_pascalb0 = $25 -s_meccb0 = $26 -s_sierra = $27 -s_a6bc95 = $28 -s_jmpbcf0 = $29 -s_rol1e = $2A -s_runhello = $2B -s_e7 = $2C -s_jmpb4bb = $2D -s_jmpb400 = $2E -s_jmpbeca = $2F -s_jsrbb03 = $30 -s_thunder = $31 -s_jmpae8e = $32 -s_diskvol = $33 -s_d5d5f7 = $34 -s_meccm7 = $35 -STRINGCOUNT = $36 - -StringTable - da :header - da :mainmenu - da :progbar - da :reading - da :diskrwts - da :bb00 - da :sunburst - da :optimum - da :builtin - da :switch - da :writing - da :unformat - da :f7 - da :sync - da :optbad - da :passver - da :passdemuf - da :passcrack - da :passcrack0 - da :fail - da :fatal0000 - da :fatal220f - da :done - da :noslot6 - da :writeerr - da :writeioerr - da :writenodev - da :writeprot - da :othermli - da :canttrace - da :canceled - da :bademu - da :reset - da :modify - da :modifyto - da :dosboot0 - da :prodosboot0 - da :pascalboot0 - da :meccboot0 - da :sierra - da :a6bc95 - da :jmpbcf0 - da :rol1e - da :runhello - da :e7 - da :jmpb4bb - da :jmpb400 - da :jmpbeca - da :jsrbb03 - da :thunder - da :jmpae8e - da :diskvol - da :d5d5f7 - da :meccm7 - -* -* Text can contain substitution strings, which -* are replaced by current values at runtime. Each -* substitution string is two bytes long. The first -* byte is always "%", which puts the print routine -* into substitution mode. The next byte controls -* which value is printed (see list below), then -* substitution mode ends automatically. Unknown -* substitution strings are silently ignored and -* produce no output. -* -* Substitution strings are case-sensitive. -* -* Supported substitution strings: -* %S destination (write) slot -* %D destination (write) drive -* %t current track (during read and patch) -* %s current sector (during read) -* -* In addition, it supports "%0" through "%9" -* for printing arbitrary hexadecimal values. -* These are stored in the gDisplayBytes array and -* can be set directly before calling PrintByID. -* -:header - ASC "Passport / 4am 20160712-fi"00 -:mainmenu - ASC "________________________________________"8D8D8D8D8D8D8D - ASC " " - INV "T" - ASC "arkista levyke"8D8D - ASC " " - INV "M" - ASC "uunna levyke"8D8D - ASC " " - INV "P" - ASC "oista suojaus levykkeelt{"8D8D - ASC " " - INV "L" - ASC "opeta"8D8D8D8D8D8D8D - ASC "alkuper{inen: S6,D1 kohde: " - INV "S" - ASC "%S,D%D"00 -:progbar - HEX 8D - ASC " ______________________________________"8D - ASC " " - INV " " - ASC "____________________________________" - INV " "8D8D8D00 -:reading - ASC "Luetaan S6,D1"8D00 -:diskrwts - ASC "K{ytet{{n levykkeen omaa RWTS:{{"8D00 -:bb00 - ASC "T00,S05 L|ysi $BB00 suojaustarkastuksen"8D - ASC "T00,S0A voi olla lukukelvoton"8D00 -:sunburst - ASC "T00,S04 L|ysi Sunburst levykkeen"8D - ASC "T11,S0F voi olla lukukelvoton"8D00 -:optimum - ASC "T00,S00 L|ysi Optimum Resource levykkeen"8D - ASC "T01,S0F voi olla lukukelvoton"8D00 -:builtin - ASC "K{ytt{{ sis{{nrakennettua RWTS:{{"8D00 -:switch - ASC "Vaihtaa sis{{nrakennettuun RWTS:{{n"8D00 -:writing - ASC "Kirjoittaa S%S,D%D"8D00 -:unformat - ASC "T%t on alustamaton"8D00 -:f7 - ASC "T%t L|ysi $F7F6EFEEAB suojauksen"8D00 -:sync - ASC "T%t L|ysi Nibble Count suojauksen"8D00 -:optbad - ASC "T%t,S%s on lukukelvoton (ei v{litet{)"8D00 -:passver - ASC "Varmistus on valmis. Levyke on luettavissa."00 -:passdemuf - ASC "Siirto valmis."8D00 -:passcrack - ASC "Suojauksen poisto valmis."8D00 -:passcrack0 - HEX 8D - ASC "Levyke kopioitiin onnistuneesti, mutta"8D - ASC "Passport ei lis{nnyt korjauksia."8D8D - ASC "Mahdollisia syit{:"8D - ASC "- Alkuper{inen levyke ei ole kopiosuojattu." - ASC "- Kohdelevyke toimii ilman korjauksia." - ASC "- Levyke k{ytt{{ tuntematonta suojausta,"8D - ASC " ja Passport ei voi auttaa."00 -:fail - HEX 8D - ASC "T%t,S%s Vakava luku virhe"8D00 -:fatal0000 - HEX 8D - ASC "Mahdollisia syit{:"8D - ASC "- Ei levykett{ asemassa S6,D1."8D - ASC "- Levyke ei ole Apple ][ levyke."8D - ASC "- Levyke on DOS 3.2 (13 sektoria)."8D - ASC "- Levyke on alustamaton."8D00 -:fatal220f - HEX 8D - ASC "Passport ei toimi t{m{n levykkeen kanssa."8D8D - ASC "Mahdollisia syit{:"8D - ASC "- Levyke ei ole 16-sektorin levyke."8D - ASC "- Levyke muuntaa RWTS:{{ tavoilla"8D - ASC " joita Passport ei pysty havaitsemaan."8D00 -:done - HEX 8D - ASC "Paina jotain n{pp{int{ jatkaaksesi " - FLS " "00 -:noslot6 - ASC "Passport vaatii Disk II aseman S6."8D - ASC "Paina jotain n{pp{int{ lopettaaksesi " - FLS " "00 -:writeerr - HEX 8D - ASC "T%t Vakava kirjoitus virhe"8D8D00 -* -* MLI error $27 -* -:writeioerr - ASC "Mahdollisia syit{:"8D - ASC "- Ei levykett{ S%S,D%D."8D - ASC "- Levykkeell{ on huonoja sektoreita."8D - ASC "- Levyke on alustamaton."8D8D00 -* -* MLI error $28 -* -:writenodev - ASC "S%S,D%D ei ole olemassa."8D00 -* -* MLI error $2B -* -:writeprot - ASC "Levyke S%S,D%D on kirjoitussuojattu."8D00 -* -* other MLI error -* -:othermli - ASC "MLI virhe $%0."8D - ASC "Ota yhteytt{ ohjelman kehitt{j{{n."8D00 - -:canttrace - ASC "Tunnistamaton asema, j{ljitt{minen on poistettu"8D00 -:canceled - ASC "Keskeytetty pyynn|st{si."8D00 -:bademu - HEX 8D - ASC "VAROITUS! K{yt{t Passport-ohjelmaa"8D - ASC "emulaattorilla joka ei asianmukaisesti"8D - ASC "tue levyke asemia. Passport yritt{{"8D - ASC "kiert{{ t{m{n, mutta jotkut levykkeet"8D - ASC "voivat olla lukukelvottomia."8D8D00 -:reset - HEX 8D - ASC "Paita jatkaaksesi."8D00 -:modify - ASC "T%t,S%0,$%1: "00 -:modifyto - ASC " -> "00 -:dosboot0 - ASC "T00,S00 L|ysi DOS 3.3 k{ynnistyslataajan"8D00 -:prodosboot0 - ASC "T00,S00 L|ysi ProDOS k{ynnistyslataajan"8D00 -:pascalboot0 - ASC "T00,S00 L|ysi Pascal k{ynnistyslataajan"8D00 -:meccboot0 - ASC "T00,S00 L|ysi MECC M8 k{ynnistyslataajan"8D00 -:sierra - ASC "T%t,S%0 L|ysi Sierra suojaustarkastuksen"8D00 -:a6bc95 - ASC "T%t,S%0 L|ysi A6BC95 suojaustarkastuksen"8D00 -:jmpbcf0 - ASC "T00,S03 RWTS vaatii ajoitus bitin ensimm{isen" - ASC "data epilogin j{lkeen hypp{{m{ll{"8D - ASC "$BCF0."8D00 -:rol1e - ASC "T00,S03 RWTS kokoaa ajoitus bittej{"8D - ASC "$1E ja tarkistaa niiden arvot my|hemmin."8D00 -:runhello - ASC "T%t,S%0 Aloitusohjelma ajaa suojaus"8D - ASC "tarkastuksen ennen oikean aloitus ohjeman" - ASC "ajamista."8D00 -:e7 - ASC "T%t,S%0 L|ysi E7 bittivirran"8D00 -:jmpb4bb - ASC "T00,S0C Levyke kutsuu suojaus tarkastusta" - ASC "$B4BB ennen DOS:in alustamista."8D00 -:jmpb400 - ASC "T00,S01 Levyke kutsuu suojaus tarkastusta" - ASC "$B400 ennen DOS:in alustamista."8D00 -:jmpbeca - ASC "T00,S02 RWTS vaatii ylim{{r{isen nibblen ja"8D - ASC "ajoitus bitin ennen data prologia"8D - ASC "hypp{{m{ll{ $BECA."8D00 -:jsrbb03 - ASC "T00,S05 L|ysi itsepurkautuvan"8D - ASC "suojaustarkastuksen $BB03."8D00 -:thunder - ASC "T00,S03 RWTS laskee ajoitus bittej{ ja"8D - ASC "tarkistaa ne my|hemmin."8D00 -:jmpae8e - ASC "T00,S0D Levyke kutsuu suojaus tarkastusta" - ASC "$AE8E DOS:in alustamisen j{lkeen."8D00 -:diskvol - ASC "T00,S08 RWTS vaatii ep{standardin"8D - ASC "levyke numeroinnin."8D00 -:d5d5f7 - ASC "T%t,S%0 L|ysi D5D5F7 suojaustarkastuksen"8D00 -:meccm7 - ASC "T00,S00 L|ysi MECC M7 k{ynnistyslataajan"8D00 diff --git a/src/strings/fr.a b/src/strings/fr.a deleted file mode 100755 index 7e3ada8..0000000 --- a/src/strings/fr.a +++ /dev/null @@ -1,343 +0,0 @@ -* French translation by Antoine Vignau -* -* Main menu keys -* (should match the text in :mainmenu below) -* (these are NOT case-sensitive) -* -k_verify = "V" -k_demuffin = "D" -k_crack = "C" -k_slot = "S" -k_quit = "Q" -* will also quit - -* -* String IDs -* (pass in accumulator to PrintByID) -* -s_header = $00 -s_mainmenu = $01 -s_progbar = $02 -s_reading = $03 -s_diskrwts = $04 -s_bb00 = $05 -s_sunburst = $06 -s_optimum = $07 -s_builtin = $08 -s_switch = $09 -s_writing = $0A -s_unformat = $0B -s_f7 = $0C -s_sync = $0D -s_optbad = $0E -s_pass = $0F -s_passdemuf = $10 -s_passcrack = $11 -s_passcrack0 = $12 -s_fail = $13 -s_fatal0000 = $14 -s_fatal220f = $15 -s_done = $16 -s_noslot6 = $17 -s_writeerr = $18 -s_writeioerr = $19 -s_writenodev = $1A -s_writeprot = $1B -s_othermli = $1C -s_canttrace = $1D -s_canceled = $1E -s_bademu = $1F -s_reset = $20 -s_modify = $21 -s_modifyto = $22 -s_dosb0 = $23 -s_prodosb0 = $24 -s_pascalb0 = $25 -s_meccb0 = $26 -s_sierra = $27 -s_a6bc95 = $28 -s_jmpbcf0 = $29 -s_rol1e = $2A -s_runhello = $2B -s_e7 = $2C -s_jmpb4bb = $2D -s_jmpb400 = $2E -s_jmpbeca = $2F -s_jsrbb03 = $30 -s_thunder = $31 -s_jmpae8e = $32 -s_diskvol = $33 -s_d5d5f7 = $34 -s_meccm7 = $35 -STRINGCOUNT = $36 - -StringTable - da :header - da :mainmenu - da :progbar - da :reading - da :diskrwts - da :bb00 - da :sunburst - da :optimum - da :builtin - da :switch - da :writing - da :unformat - da :f7 - da :sync - da :optbad - da :passver - da :passdemuf - da :passcrack - da :passcrack0 - da :fail - da :fatal0000 - da :fatal220f - da :done - da :noslot6 - da :writeerr - da :writeioerr - da :writenodev - da :writeprot - da :othermli - da :canttrace - da :canceled - da :bademu - da :reset - da :modify - da :modifyto - da :dosboot0 - da :prodosboot0 - da :pascalboot0 - da :meccboot0 - da :sierra - da :a6bc95 - da :jmpbcf0 - da :rol1e - da :runhello - da :e7 - da :jmpb4bb - da :jmpb400 - da :jmpbeca - da :jsrbb03 - da :thunder - da :jmpae8e - da :diskvol - da :d5d5f7 - da :meccm7 -* -* Text can contain substitution strings, which -* are replaced by current values at runtime. Each -* substitution string is two bytes long. The first -* byte is always "%", which puts the print routine -* into substitution mode. The next byte controls -* which value is printed (see list below), then -* substitution mode ends automatically. Unknown -* substitution strings are silently ignored and -* produce no output. -* -* Substitution strings are case-sensitive. -* -* Supported substitution strings: -* %S destination (write) slot -* %D destination (write) drive -* %t current track -* %s current sector -* -* In addition, it supports "%0" through "%9" -* for printing arbitrary hexadecimal values. -* These are stored in the gDisplayBytes array and -* can be set directly before calling PrintByID. -* -:header - ASC "Passport par 4am 20160712-fr"00 -:mainmenu - ASC "________________________________________"8D8D8D8D8D8D8D - ASC " " - INV "V" - ASC "{rifier"8D8D - ASC " " - INV "D" - ASC "{muffiniser"8D8D - ASC " " - INV "C" - ASC "racker"8D8D - ASC " " - INV "Q" - ASC "uitter"8D8D8D8D8D8D8D - ASC "source: S6,D1 destination: " - INV "S" - ASC "%S,D%D"00 -:progbar - HEX 8D - ASC " ______________________________________"8D - ASC " " - INV " " - ASC "____________________________________" - INV " "8D8D8D00 -:reading - ASC "Lecture depuis S6,D1"8D00 -:diskrwts - ASC "Utilisation de la RWTS de la disquette"8D00 -:bb00 - ASC "V{rif. de protection en $BB00 d{tect{e"8D - ASC "P00,S0A probablement illisible"8D00 -:sunburst - ASC "Disquette Sunburst d{tect{e"8D - ASC "P11,S0F probablement illisible"8D00 -:optimum - ASC "Disquette Optimum Resource d{tect{e"8D - ASC "P01,S0F probablement illisible"8D00 -:builtin - ASC "Utilisation de la RWTS int{gr{e"8D00 -:switch - ASC "Bascule vers la RWTS int{gr{e"8D00 -:writing - ASC "Ecriture vers S%S,D%D"8D00 -:unformat - ASC "P%t non format{e"8D00 -:f7 - ASC "Protection $F7F6EFEEAB d{tect{e P%t"8D00 -:sync - ASC "Protection Nibble count d{tect{e P%t"8D00 -:optbad - ASC "P%t,S%s n'est pas lisible (ignor{)"8D00 -:passver - ASC "V{rif. termin{e. Disquette lisible."8D00 -:passdemuf - ASC "D{muffin termin{."8D00 -:passcrack - ASC "Crack termin{."8D00 -:passcrack0 - HEX 8D - ASC "La disquette a {t{ copi{e avec succ}s"8D - ASC "mais Passport ne l'a pas modifi{e."8D8D - ASC "Causes possibles :"8D - ASC "- Disquette source non prot{g{e."8D - ASC "- Disquette destination fonctionnelle."8D - ASC "- La disquette utilise une protection"8D - ASC " inconnue non g{r{e par Passport."00 -:fail - HEX 8D - ASC "Erreur fatale de lecture P%t,S%s"8D00 -:fatal0000 - HEX 8D - ASC "Causes possibles :"8D - ASC "- Pas de disquette en S6,D1."8D - ASC "- Disquette non Apple ][."8D - ASC "- Disquette uniquement DOS 3.2."8D - ASC "- Disquette non format{e."8D00 -:fatal220f - HEX 8D - ASC "Passport ne peut g{rer cette disquette."8D8D - ASC "Causes possibles :"8D - ASC "- Disquette non 16-secteurs."8D - ASC "- Disquette modifie sa RWTS et"8D - ASC " Passport ne peut pas le d{tecter."8D00 -:done - HEX 8D - ASC "Pressez une touche pour continuer " - FLS " "00 -:noslot6 - ASC "Passport requiert un Disk II en S6."8D - ASC "Pressez une touche pour quitter " - FLS " "00 -:writeerr - HEX 8D - ASC "Erreur fatale d'{criture P%t"8D8D00 -* -* MLI error $27 -* -:writeioerr - ASC "Causes possibles :"8D - ASC "- Pas de disquette en S%S,D%D."8D - ASC "- Secteurs illisibles sur la disquette."8D - ASC "- La disquette n'est pas format{e."8D8D00 -* -* MLI error $28 -* -:writenodev - ASC "S%S,D%D n'existe pas."8D00 -* -* MLI error $2B -* -:writeprot - ASC "Disque en S%S,D%D prot{g{ en {criture."8D00 -* -* other MLI error -* -:othermli - ASC "Erreur MLI $%0."8D - ASC "Veuillez contacter le d{veloppeur."8D00 -:canttrace - ASC "Lecteur inconnu, trace d{sactiv{e"8D00 -:canceled - ASC "Op{ration annul{e @ votre demande."8D00 -:bademu - HEX 8D - ASC "ATTENTION ! Vous utilisez Passport avec"8D - ASC "un {mulateur qui ne g}re pas bien les"8D - ASC "lecteurs de disquettes. Passport tentera" - ASC "de contourner le probl}me mais certaines" - ASC "disquettes ne seront pas lisibles."8D8D00 -:reset - HEX 8D - ASC "Pressez pour continuer."8D00 -:modify - ASC "P%t,S%0,$%1: "00 -:modifyto - ASC " -> "00 -:dosboot0 - ASC "P00,S00 Secteur de boot DOS 3.3 trouv{"8D00 -:prodosboot0 - ASC "P00,S00 Secteur de boot ProDOS trouv{"8D00 -:pascalboot0 - ASC "P00,S00 Secteur de boot Pascal trouv{"8D00 -:meccboot0 - ASC "P00 Secteur de boot MECC M8 trouv{"8D00 -:sierra - ASC "P%t,S%0 V{rif. de prot. Sierra trouv{e"8D00 -:a6bc95 - ASC "P%t,S%0 V{rif. de prot. A6BC95 trouv{e"8D00 -:jmpbcf0 - ASC "P00,S03 La RWTS requiert un bit de"8D - ASC "timing apr}s le premier {pilogue du"8D - ASC "champ de donn{es en sautant @ $BCF0."8D00 -:rol1e - ASC "P00,S03 La RWTS met les bits de timing"8D - ASC "en $1E et v{rifie la valeur plus tard."8D00 -:runhello - ASC "P%T,S%0 Le programme de d{marrage"8D - ASC "v{rifie la protection avant d'ex{cuter"8D - ASC "le vrai programme de d{marrage."8D00 -:e7 - ASC "P%t,S%0 Flux de bits E7 trouv{"8D00 -:jmpb4bb - ASC "P00,S0C Le disque v{rifie la protection"8D - ASC "en $B4BB avant d'initialiser le DOS."8D00 -:jmpb400 - ASC "P00,S01 Le disque v{rifie la protection"8D - ASC "en $B400 avant d'initialiser le DOS."8D00 -:jmpbeca - ASC "P00,S02 La RWTS requiert des nibbles"8D - ASC "suppl{mentaires et des bits de timing"8D - ASC "apr}s le prologue de donn{es en $BECA."8D00 -:jsrbb03 - ASC "P00,S05 V{rification de protection"8D - ASC "auto-d{chiffrable trouv{e en $BB03."8D00 -:thunder - ASC "P00,S03 La RWTS compte les bits de"8D - ASC "timing et les v{rifie plus tard."8D00 -:jmpae8e - ASC "P00,S0D Le disque v{rifie la protection"8D - ASC "en $AE8E apr}s l'initialisation du DOS."8D00 -:diskvol - ASC "P00,S08 La RWTS requiert un num{ro de"8D - ASC "volume de disque non standard."8D00 -:d5d5f7 - ASC "P%t,S%0 V{rif. de prot. D5D5F7 trouv{e"8D00 -:meccm7 - ASC "P00 Secteur de boot MECC M7 trouv{"8D00 - -* asc "1234567890123456789012345678901234567890" diff --git a/src/strings/it.a b/src/strings/it.a deleted file mode 100755 index a3aed27..0000000 --- a/src/strings/it.a +++ /dev/null @@ -1,351 +0,0 @@ -* Italian translation by Marco Verpelli -* -* Main menu keys -* (should match the text in :mainmenu below) -* (these are NOT case-sensitive) -* -k_verify = "V" -k_demuffin = "D" -k_crack = "C" -k_slot = "S" -k_quit = "F" -* will also quit - -* -* String IDs -* (pass in accumulator to PrintByID) -* -s_header = $00 -s_mainmenu = $01 -s_progbar = $02 -s_reading = $03 -s_diskrwts = $04 -s_bb00 = $05 -s_sunburst = $06 -s_optimum = $07 -s_builtin = $08 -s_switch = $09 -s_writing = $0A -s_unformat = $0B -s_f7 = $0C -s_sync = $0D -s_optbad = $0E -s_pass = $0F -s_passdemuf = $10 -s_passcrack = $11 -s_passcrack0 = $12 -s_fail = $13 -s_fatal0000 = $14 -s_fatal220f = $15 -s_done = $16 -s_noslot6 = $17 -s_writeerr = $18 -s_writeioerr = $19 -s_writenodev = $1A -s_writeprot = $1B -s_othermli = $1C -s_canttrace = $1D -s_canceled = $1E -s_bademu = $1F -s_reset = $20 -s_modify = $21 -s_modifyto = $22 -s_dosb0 = $23 -s_prodosb0 = $24 -s_pascalb0 = $25 -s_meccb0 = $26 -s_sierra = $27 -s_a6bc95 = $28 -s_jmpbcf0 = $29 -s_rol1e = $2A -s_runhello = $2B -s_e7 = $2C -s_jmpb4bb = $2D -s_jmpb400 = $2E -s_jmpbeca = $2F -s_jsrbb03 = $30 -s_thunder = $31 -s_jmpae8e = $32 -s_diskvol = $33 -s_d5d5f7 = $34 -s_meccm7 = $35 -STRINGCOUNT = $36 - -StringTable - da :header - da :mainmenu - da :progbar - da :reading - da :diskrwts - da :bb00 - da :sunburst - da :optimum - da :builtin - da :switch - da :writing - da :unformat - da :f7 - da :sync - da :optbad - da :passver - da :passdemuf - da :passcrack - da :passcrack0 - da :fail - da :fatal0000 - da :fatal220f - da :done - da :noslot6 - da :writeerr - da :writeioerr - da :writenodev - da :writeprot - da :othermli - da :canttrace - da :canceled - da :bademu - da :reset - da :modify - da :modifyto - da :dosboot0 - da :prodosboot0 - da :pascalboot0 - da :meccboot0 - da :sierra - da :a6bc95 - da :jmpbcf0 - da :rol1e - da :runhello - da :e7 - da :jmpb4bb - da :jmpb400 - da :jmpbeca - da :jsrbb03 - da :thunder - da :jmpae8e - da :diskvol - da :d5d5f7 - da :meccm7 -* -* Text can contain substitution strings, which -* are replaced by current values at runtime. Each -* substitution string is two bytes long. The first -* byte is always "%", which puts the print routine -* into substitution mode. The next byte controls -* which value is printed (see list below), then -* substitution mode ends automatically. Unknown -* substitution strings are silently ignored and -* produce no output. -* -* Substitution strings are case-sensitive. -* -* Supported substitution strings: -* %S destination (write) slot -* %D destination (write) drive -* %t current track (during read and patch) -* %s current sector (during read) -* -* In addition, it supports "%0" through "%9" -* for printing arbitrary hexadecimal values. -* These are stored in the gDisplayBytes array and -* can be set directly before calling PrintByID. -* -:header - ASC "Passport di 4am 20160712-it"00 -:mainmenu - ASC "________________________________________"8D8D8D8D8D8D8D - ASC " " - INV "V" - ASC "erifica il disco"8D8D - ASC " " - INV "D" - ASC "emuffin (copia)"8D8D - ASC " " - INV "C" - ASC "ura il disco"8D8D - ASC " " - INV "F" - ASC "ine"8D8D8D8D8D8D8D - ASC "originale: S6,D1 copia: " - INV "S" - ASC "%S,D%D"00 -:progbar - HEX 8D - ASC " ______________________________________"8D - ASC " " - INV " " - ASC "____________________________________" - INV " "8D8D8D00 -:reading - ASC "Leggo dallo S6,D1"8D00 -:diskrwts - ASC "Uso la RWTS letta dal disco"8D00 -:bb00 - ASC "T00,S05 Trovata protezione $BB00"8D - ASC "T00,S0A potrebbe essere illeggibile"8D00 -:sunburst - ASC "T00,S04 Trovato disco della Sunburst"8D - ASC "T11,S0F potrebbe essere illeggibile"8D00 -:optimum - ASC "T00,S00 Trovato disco della"8D - ASC "Optimum Resource"8D - ASC "T01,S0F potrebbe essere illegibile"8D00 -:builtin - ASC "Uso la RWTS incorporata"8D00 -:switch - ASC "Passo alla RWTS incorporata"8D00 -:writing - ASC "Scrivo sullo S%S,D%D"8D00 -:unformat - ASC "La T%t non e' formattata"8D00 -:f7 - ASC "T%t Trovata protezione $F7F6EFEEAB"8D00 -:sync - ASC "T%t Trovata protezione conteggio nibble"8D00 -:optbad - ASC "T%t,S%s e' illeggibile (ignorata)"8D00 -:passver - ASC "Verifica completata. Il disco e' buono."8D00 -:passdemuf - ASC "Demuffin (copia) completata."8D00 -:passcrack - ASC "Cura completata."8D00 -:passcrack0 - HEX 8D - ASC "Il disco e' stato copiato con successo,"8D - ASC "ma Passport non ha applicato modifiche."8D8D - ASC "Possibili cause:"8D - ASC "- L'originale non era protetto da copia." - ASC "- La copia funziona senza modifiche."8D - ASC "- L'originale usa una protezione non"8D - ASC " conosciuta e Passport non puo' essere"8D - ASC " di ulteriore aiuto."00 -:fail - HEX 8D - ASC "T%t,S%s Errore grave in lettura"8D00 -:fatal0000 - HEX 8D - ASC "Possibili cause:"8D - ASC "- Non e' inserito un disco nello S6,D1."8D - ASC "- Non e' un disco Apple ][."8D - ASC "- Il disco e' solo per DOS 3.2."8D - ASC "- Il disco non e' formattato."8D00 -:fatal220f - HEX 8D - ASC "Passport non funziona con questo disco."8D8D - ASC "Possibili cause:"8D - ASC "- Questo non e' un disco a 16 settori."8D - ASC "- Il disco ha una RWTS modificata in"8D - ASC " un modo che Passport non e' in grado"8D - ASC " di identificare."8D00 -:done - HEX 8D - ASC "Premere un tasto per continuare " - FLS " "00 -:noslot6 - ASC "Passport richiede un drive Disk II."8D - ASC "nello S6."8D - ASC "Premere un tasto per finire " - FLS " "00 -:writeerr - HEX 8D - ASC "T%t Errore grave in scrittura"8D8D00 -* -* MLI error $27 -* -:writeioerr - ASC "Possibili cause:"8D - ASC "- Non e' inserito un disco nello S%S,D%D."8D - ASC "- Il disco ha dei settori danneggiati."8D - ASC "- Il disco non e' formattato."8D8D00 -* -* MLI error $28 -* -:writenodev - ASC "Lo S%S,D%D non esiste."8D00 -* -* MLI error $2B -* -:writeprot - ASC "Il disco nello S%S,D%D e' protetto da"8D - ASC "scrittura."8D00 -* -* other MLI error -* -:othermli - ASC "Errore MLI $%0."8D - ASC "Per favore contattate lo sviluppatore."8D00 - -:canttrace - ASC "Drive non riconosciuto, tracciamento"8D - ASC "disabilitato."8D00 -:canceled - ASC "Cancellato come hai richiesto."8D00 -:bademu - HEX 8D - ASC "ATTENZIONE! Stai eseguendo Passport con"8D - ASC "un emulatore che non supporta a pieno i"8D - ASC "floppy drivers. Passport cerchera' di"8D - ASC "rimediare a questa mancanza, ma certi"8D - ASC "dischi risulteranno illeggibili."8D8D00 -:reset - HEX 8D - ASC "Premere per continuare."8D00 -:modify - ASC "T%t,S%0,$%1: "00 -:modifyto - ASC " -> "00 -:dosboot0 - ASC "T00,S00 Trovato bootloader DOS 3.3"8D00 -:prodosboot0 - ASC "T00,S00 Trovato bootloader ProDOS"8D00 -:pascalboot0 - ASC "T00,S00 Trovato bootloader Pascal"8D00 -:meccboot0 - ASC "T00 Trovato bootloader MECC M8"8D00 -:sierra - ASC "T%t,S%0 Trovata protezione Sierra"8D00 -:a6bc95 - ASC "T%t,S%0 Trovata protezione A6BC95"8D00 -:jmpbcf0 - ASC "T00,S03 La RWTS richiede un timing bit"8D - ASC "dopo il primo epologo dati via salto a"8D - ASC "$BCF0."8D00 -:rol1e - ASC "T00,S03 La RWTS accumula timing bits"8D - ASC "in $1E e dopo ne controlla il valore."8D00 -:runhello - ASC "T%t,S%0 Il programma di avvio esegue"8D - ASC "un controllo di protezione prima di"8D - ASC "lanciare il vero programma di avvio."8D00 -:e7 - ASC "T%t,S%0 Trovato bitstream E7"8D00 -:jmpb4bb - ASC "T00,S0C Il disco chiama un controllo"8D - ASC "di protezione a $B4BB prima di"8D - ASC "inizializzare il DOS."8D00 -:jmpb400 - ASC "T00,S01 il disco chiama un controllo"8D - ASC "di protezione a $B400 prima di" - ASC "inizializzare il DOS."8D00 -:jmpbeca - ASC "T00,S02 La RWTS richiede sia nibbles"8D - ASC "extra che timing bits dopo il prologo"8D - ASC "dati via salto a $BECA."8D00 -:jsrbb03 - ASC "T00,S05 Trovato un controllo di"8D - ASC "protezione con auto-decodifica a $BB03."8D00 -:thunder - ASC "T00,S03 La RWTS conta i timing bits e"8D - ASC "dopo li controlla."8D00 -:jmpae8e - ASC "T00,S0D Il disco chiama un controllo"8D - ASC "di protezione a $AE8E dopo aver"8D - ASC "inizializzato il DOS."8D00 -:diskvol - ASC "T00,S08 La RWTS richiede un disco con"8D - ASC "un numero di volume non standard."8D00 -:d5d5f7 - ASC "T%t,S%0 Trovata protezione D5D5F7"8D00 -:meccm7 - ASC "T00 Trovato bootloader MECC M7"8D00