Autore Topic: Austrospeed  (Letto 2480 volte)

S\_/S

  • Newbie
  • *
  • Post: 4
Austrospeed
« il: 17 Novembre 2006, 08:45:39 »
 Ciao a tutti,
vorrei sapere se qualcuno conosce così a fondo Austrospeed/Blitz! da risolvere questo problema:
vorrei inserire nel sorgente dei comandi non-standard (tipo BASIC extentions, wedges, etc.) ed ho letto da qualche parte che è possibile, prefissandoli con doppio due punti (ad esempio ::COMANDO).
In tal modo il compilatore ignora questo comando lasciandolo all'interprete standard e non emettendo errore di compilazione. B)
Purtroppo i miei tests non hanno dato risultati positivi, l'extention viene riconosciuta ma viene emesso dal compilare un messaggio di errore.  :huh:
Qualcuno può darmi un consiglio?
Grazie

iAN CooG

  • Utente
  • **
  • Post: 1774
    • http://iancoog.altervista.org
  • Gioco Preferito: Turbo Assembler, ActionReplay Monitor, DiskDemon
Austrospeed
« Risposta #1 il: 17 Novembre 2006, 20:31:15 »
 Io vorrei vedere dove hai letto di sta cosa del doppio ":", in rete e' pieno di contenuti non verificati, per non parlare di leggende metropolitane e soprattutto balle grosse come case scritte da incompetenti messe tanto per riempire i siti.
Mi avevi fatto la stessa domanda via mail e ti avevo risposto di decompilare Austrospeed per verificarne il funzionamento. L'ho fatto io per te, prendi QUESTO Rar ed espandilo.
DECOMPILERv2.BAS.prg e' la mia versione modificata di un decompilatore per supportare 4 diversi hack di austro/blitz.
AustroSpeed.bas e' il decompilato e detokenizzato di austrospeed88.prg
La parte interessante e' questa:
Codice: [Seleziona]
8726 IFc%<128GOTO8943
8733 c5%=c%-127
8738 IFc5%>35GOTO8833
8745 ONc5%GOTO9013,9094,9261,9322,9469,9499,9677,9778,8958,9857
8768 ONc5%-10GOTO9959,9984,9051,9863,9057,10091,9044,10385,10537,10683
8793 ONc5%-20GOTO10690,10697,10807,10623,10997,11070,9069,9069,9063,11003
8818 ONc5%-30GOTO10643,11239,11365,11396,9037
8833 c5%=c5%-75
8838 IFc5%<0GOTO9031
8844 ONc5%GOTO11498
8849 x1$="extensions"
8863 GOSUB15365
8866 i$=CHR$(71)+CHR$(c%)
8873 k2%=58
8877 SYSm%+3
8882 IFc%=k2%ORc%=0GOTO8911
8893 IFc%=34THENk2%=34
8903 i$=i$+CHR$(c%)
8908 GOTO8877
8911 IFc%=34THENk2%=58:GOTO8903
8924 i$=i$+":"+CHR$(158)+"2082:"
8940 GOTO9024
Con un po' di deduzione si capisce che e' la parte che si occupa di compilare i vari tokens (bytes > $80) mentre se incontra dei tokens con valore superiore a $CB, limite superiore dei tokens nel basic 2.0 vengono considerati appunto ESTENSIONI del Basic, e il compilatore emette del codice apposito (tokens+"SYS2082:") che verra' interpretato poi a runtime dall'interprete basic attivo in quel momento.
Io l'ho provato con uno stupidissimo oneliner in Simons basic:
10 HIRES 1,0
Austrospeed lo compila dicendo che alla linea #10 trova un estensione e in fondo al prg generato dopo la compilazione si nota il token e la sys in chiaro.
E funziona pure, caricato Simons, caricato il prg compilato, e va in pagina grafica.
-=[]=--- iAN CooG/HVSC^C64Intros ---=[]=-
- http://hvsc.c64.org - http://intros.c64.org -

S\_/S

  • Newbie
  • *
  • Post: 4
Austrospeed
« Risposta #2 il: 20 Novembre 2006, 09:32:36 »
 Dear Ian,
la feature del doppio ":" è accennata da Jim Hehl in un suo file di info sull'Austrospeed per Plus4, di cui sono venuto in possesso. Jim era uno dei guru del Plus4 (oltre che del C64) negli anni d'oro e viveva del software prodotto (!).

Come senz'altro saprai la versione per +4 che circola è stata craccata, non si sa da chi, e io non ho mai visto nè sentito parlare dell'originale.

Ritornando al discorso delle estensioni, siccome lo stesso JimH ne ha scritte di sue, è probabile che abbia usato la caratteristica in questione.

Ti ringrazio cmq per la ricerca, anzi se mi passi il prg  DECOMPILERv2.BAS potrei lavorarci su anch'io.

 

iAN CooG

  • Utente
  • **
  • Post: 1774
    • http://iancoog.altervista.org
  • Gioco Preferito: Turbo Assembler, ActionReplay Monitor, DiskDemon
Austrospeed
« Risposta #3 il: 20 Novembre 2006, 21:03:20 »
 
Citazione
Dear Ian,
la feature del doppio ":" è accennata da Jim Hehl in un suo file di info sull'Austrospeed per Plus4, di cui sono venuto in possesso. Jim era uno dei guru del Plus4 (oltre che del C64) negli anni d'oro e viveva del software prodotto (!).

Come senz'altro saprai la versione per +4 che circola è stata craccata, non si sa da chi, e io non ho mai visto nè sentito parlare dell'originale.
RONF! Bastava dirlo subito :) Davo per scontato che parlavi della versione C64, visto il topic di questo forum.
Non ne so nulla di versioni per plus4, devi chiedere su un forum per plus4, io ti posso aiutare solo per quanto riguarda il C64, quello che so - derivandolo dal decompilato - e' che la versione C64 non ha assolutamente quella cosa che tu dici. Sapendo gia' chi ne sa qualcosa, perche' non chiedere direttamente a lui?
Citazione
se mi passi il prg  DECOMPILERv2.BAS
Con bastext puoi ottenerlo facilmente dal prg. Lo trovi sul mio sito.
-=[]=--- iAN CooG/HVSC^C64Intros ---=[]=-
- http://hvsc.c64.org - http://intros.c64.org -

S\_/S

  • Newbie
  • *
  • Post: 4
Austrospeed
« Risposta #4 il: 21 Novembre 2006, 08:48:40 »
 Purtroppo JimH ha da anni "mollato" ed è molto raro persino che si colleghi in rete.
La mia ipotesi (considerato anche quanto detto per la originalità di AustroSpeed) era che fosse molto simile alla versione per C64, per questo ho postato qui.
Cmq grazie di tutto.