1

Na grzybie w katalogu Windows zapisywane są m.in. ustawienia różnego rodzaju, np. pliki *.ini

A pod naszymi dosami - myślę tu o Sparcie ?
Przecież soft na /|\ może także zapisywać, np. ścieżkę dostępu jaką ostatnio używał user, kolory, wartości, adresy etc. - w swoich plikach, np. QA.SET
Standardowo przujmuje się, że taki plik jest zapisywany w katalogu wraz z właściwym programem - który go generował. Czy zawsze ?

2

nie spotkałem programu na Atari, który zapisując ustawienia zrobił by to gdzie indziej niż tam, gdzie został uruchomiony. Teoretycznie zastanawiałem się nad takim rozwiązaniem w przypadku trsdesktop - lecz na chwilę obecną zapis ustawień jest związany z katalogiem gdzie program został zainstalowany :)

Kontakt: pin@usdk.pl

3

na Atari w tym samym katalogu co program, dzięki temu będzie działać pod każdym DOS-em

Pajero Ty znowu kombinujesz, skąd program ma wiedzieć w którym katalogu/podkatalogu siedzi jego plik INI skoro nie ma Windows-a na Atari, który ujednoliciłby to

rozwiązanie jest proste i skuteczne, plik INI zostanie załadowany z aktualnego urządzenia (tej samej ścieżki) co aktualnie uruchomiany program, proste i skuteczne, a Tobie pewnie się marzy komplikacja która spowoduje dalsze komplikacje a w konsekwencji permanentny zwis programu, wtedy będziesz szczęśliwy że tak zamieszałeś jak nikt jeszcze nie zamieszał :)

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

4

W sumie to jest duza zaleta a nie wada. Np. w Mac Os'ie tak jest i chcac przeniesc program, zrobic jego backup lub go  skasowac po prostu operuje sie na katalogu w ktorym zostal on zainstalowany.

5

SDX 4.40 ma systemowy katalog "SPARTA.DOS" (na dysku, z którego się bootuje), nie stanowi problemu, zeby ścieżka dostępu do niego była wyeksportowana do zmiennych środowiskowych, tak żeby np. command.com mógł tam zapisywać bieżącą ścieżkę dostępu, a sam DOS przy następnym starcie ją automatycznie odczytywać i ustawiać (jako ostatnio używaną).

Tylko że musiałoby to byc robione przy każdej zmianie katalogu przez usera (poleceniem CD), a to razem z odczytaniem ścieżki celem wyświetlenia jej w $PROMPT mogłoby juz zabierać trochę zbyt dużo czasu, zwłaszcza że zapis krótkiego pliku (tego z informacją o bieżącym katalogu), jeszcze w połączeniu pewnie ze skasowaniem poprzedniego, trwa znacznie dłużej niz odczyt - bo to są dwie operacje na bitmapie. Nawet na bardzo szybkim dysku (IDEa, sektory 512 bajtów) byłoby to zauważalne, a przez SIO to strach pomyśleć.

KMK
? HEX$(6670358)

6

Moje pytanie padło, bo chciałem wiedzieć czy istnieje juz wypracowany standard.
Czyli nie ma ogólnego katalogu dla plików *.ini  oraz   *.set

Chce dodać do Atari Commandera (a dokładnie jesli uruchomi się go pod SDX) opcje zapamiętywania w pliku *.set ostatnio używanych sciężek dla lewego i prawego panelu....

7

Oczywiście, że jest wypracowany standard, polegający na trzymaniu konfiguracji w tym samym katalogu co binarka.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

8

to propozycja z mojej strony brzmi tak, by za katalog dla plików z ustawieniami przyjąć katalog SPARTA.DOS - oczywiście w przypadku wersji 4.40. Nie pamiętam jednak, jak zareaguje na to dos, bo domyślnie w owym katalogu zapisywane są pliki z konfiguracją dosa możliwą do wyboru z poziomu menu startowego. Nie mam w tej chwili pod ręką Atarki, by to sprawdzić. Chodzi o to, by np. plik konfiguracyjny AC nie pojawił się w boot menu :) - W przypadku wcześniejszych wersji Sparty proponuję wrócić z ustawieniami do katalogu z którego ac został odpalony - czyli w tym przypadku dobrze by było, by plik ac.ini, czy ac.cokolwiek tam :) - był też poszukiwany z użyciem ścieżki definiowanej w Sparta dos - to na wypadek, gdyby ac został uruchamiany przy użyciu ścieżki z dowolnego miejsca na dysku.

Kontakt: pin@usdk.pl

9 Ostatnio edytowany przez Jacques (2007-11-20 18:34:06)

A po co tak rozróżniać, jaka wersja SDX i w zależności od tego trzymać w różnych miejscach? Standard to standard, katalog z binarką i tyle ;)

10

A konkretnie najpierw katalog z ktorego uruchamiana jest binarka (niekoniecznie ten w ktorym ona jest, zawsze mozna uruchamiac podajac pelna sciezke), a potem zmienna path i juz.
Tak bylo i dzialalo od lat i bylo dobrze. Po co to zmieniac?
Zawsze mozna (tak jak ja) stworzyc sobie pliki wsadowe uruchamiajace najpopularniejsze aplikacje i katalog z takimi plikami umiescic na poczatku path, a potem juz w samych plikach przechodzic lub nie do odpowiedniego katalogu przed wywolaniem pliku binarnego.

Bla bla bla bla, bla bla bla. Bla bla bla - bla - bla. Blabla bleee.

11

Pinokio, nie zaciemniaj. Zostańmy przy trzymaniu konfiga we własnym katalogu. Nawet na pecetach znów staje się to trendi i to nie bez powodu.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

12

Rozwiązanie proste (dla kodera), pliki *.set w jednym katalogu, np. D1:>SETUP>AC.SET czyli krótka informacja tekstowa...

Rozwiązanie proste (dla usera), plik *.set wraz z binarką:

 lda $700
 cmp #'S' ;sparta
 bne noFileSet
 lda $701
 cmp #$39
 bcc noFileSet

 lda $A  ;...get adress TABCOM+63
 clc
 adc #63
 sta $FE
 lda $B
 adc #0
 sta $FF

 ldy #0
nxt lda ($FE),y
 bmi fine
 cmp #'X'
 bne skip
 iny
 lda ($FE),y
 cmp #' '
 bne nxt

;znalezione CAR:X - usun z nazwy 
;zakoduj se :)))

skip iny
     jmp nxt
fine 

;zamien (jeśli jest) rozszerzenie na "SET"
;zakoduj se :)))

I to jest problem - mase kodu...

13

Jacques napisał/a:

A po co tak rozróżniać, jaka wersja SDX i w zależności od tego trzymać w różnych miejscach? Standard to standard, katalog z binarką i tyle ;)

bo bodaj dopiero od wersji 4.39 istnieje w SDX katalog systemowy SPARTA.DOS :). Ogólnie przy niczym się nie upieram, bo i tak znaczącym sukcesem jest fakt, iż coraz więcej użytkowników wybiera "jedynie słuszny dyskowy system operacyjny" :P:)

Kontakt: pin@usdk.pl

14

Ma być latwiej dla uzykownika a nie programisty - to nie system Finansowo-Ksiegowy :)

A skoro tak to poprostu plik konfiguracyjny jest w katalogu z ktorego uruchamiamy binarke i juz. Jak ktos chce umiescic go w innym miejscu zawsze moze przejsc do tego smiesznego katalogu i z niego wywolac binarke z pelna sciezka (plikiem wsatowym np).

Bla bla bla bla, bla bla bla. Bla bla bla - bla - bla. Blabla bleee.

15

Pecuś, ja jakoś przeżyje, ale ramu szkoda... ;)

16

...a 1 MB na simmie "miało wystarczyć każdemu" :D

17

A czy przypadkiem odwolanie typu D:plik.set nie wskazuje pod SDX pliku w aktualnej sciezce??

Bla bla bla bla, bla bla bla. Bla bla bla - bla - bla. Blabla bleee.

18

Dokładnie tak jest, ale tylko do momentu, kiedy program nie wywoła CHDIR zmieniając bieżący katalog...

KMK
? HEX$(6670358)

19 Ostatnio edytowany przez pajero (2007-11-22 19:40:36)

Uogólniacie...

Sytuacja zgodna jest jeśli aktualna ścieżka jest ustawiona na np. D1:>UTILS>
wtedy uruchomienie D1:>UTILS>X AC.COM
sprawdzi się jako AC.SET i dotyczy podkatalogu UTILS

Ale jeśli scięzka jest D1:
to wtedy uruchomienie D1:>UTILS>X AC.COM
nie sprawdzi się jako AC.SET i bo bedzie szukać w katalogu root


Jeśli podamy D:AC.SET
zrobimy D4:AC.SET
bo A = D1   B = D2   C = D3   D = D4

20

poza tym jeśli ac mamy w:

C:\utilz\ac.exe

a set wygląda tak:
...
path c:\utilz\;:.......
...

i AC odpalamy np. z D1:->D2:, lub D4:->D15: to o ile AC nie będzie przeszukiwać PATH to całość zakończy się brakiem możliwości dostępu do AC.SET. Co innego byłoby w chwili, gdy AC używałoby PATH, lecz w takim przypadku jeśli ścieżka jest długa spowoduje to znaczące opóźnienia przy próbie uzyskania dostępu do danych z AC.SET. Ogólnie wydaje mi się, że najlepszym rozwiązaniem jest krótki i prosty program instalacyjny do AC i ścisłe określanie lokalizacji katalogu roboczego programu - czyli instalator zapisuje na "stałe" w AC.EXE dane odnośnie lokalizacji. I problem z głowy :)

Kontakt: pin@usdk.pl

21 Ostatnio edytowany przez drac030 (2007-12-22 18:42:40)

O ile nadążam, weź wrzuć SI2.EXE do któregokolwiek katalogu, jaki masz w $PATH, wyjdź z niego, odpal SysInfo, wybierz "Save settings" z menu, a potem sprawdź, gdzie SI.DEF zostało zapisane.,, i ten program wcale nie przeszukuje $PATH.

KMK
? HEX$(6670358)