Poznáte to, dostanete nevinnú otázku z ktorej sa nakoniec vykľuje zaujímavý problém.

“Koľko máš vlastne v tom Action! voľnej pamäte?”

V Basicu sa dá veľkosť voľnej pamäte zistiť cez pamäťové adresy MEMTOP.

? (PEEK(742)*256-PEEK(741))-(PEEK(145)*256-PEEK(144))

Druhá možnosť je príkazom ? FRE(0). V Action! neexistuje podobný príkaz na zobrazenie voľnej pamäte, takže je nutné prispôsobiť ten prvý spôsob. Adresa 741/742 ukazuje korektné údaje, no 141/142 nie. Pri kompilácii je však prvé pole CARD hodnôt umiestnené tak, že obsahuje presne tú hodnotu ktorú potrebujeme.

PROC MAIN()
  CARD t=741, f=[0]
  CARD ARRAY e(1)
  f=t-e
  PRINTF("%U",f)
RETURN

Tak sa na to pozrime:

Jazyk Voľná pamäť [B]
Turbo Basic 1.5 34021
Action! 3.6 36214
Atari BASIC rev. C 37902

Celkom dobrý výsledok 😉 Čo však ak potrebujete DOS? Prehrabal som zabudnuté zákutia disku a nazbieral celkom slušnú kôpku rôznych DOSov.

Dva najhoršie výsledky:

DOS Voľná pamäť [B]
K-DOS 25268
SuperDOS 5.1 28840

Ďalšia várka končí tesne pod hranicou 30kB:

DOS Voľná pamäť [B]
MachDos v3.7a 29302
OSS DOS XL 2.30p 29302
BIBO-DOS 7.0 29309
SuperDOS 4.3T 29363
TURBO DOS XE 29691
TURBO DOS 2.5 29814
DOS II+/D 6.4 29814
MyDOS 4.55 29912

Najväčšia várka ktorá síce prekročila 30kB, ale nie o veľa.

DOS Voľná pamäť [B]
SMARTDOS 6.1D 30046
OSS OS/A+ 1.2e 30070
BIBODOS 5.4RN 30077
BW-DOS 1.3 30098
ATARI DOS II 2.5 30298
TOP-DOS 1.5 30326
XDOS 2.4N 30342
OSS DOS II+/D 4.2M 30402
G.O.S. 30442
ATARI DOS XE 1.0 30586
ATARI DOS 4.0 30586
ATARI DOS II 2.75 30730

No a konečne tu máme finále. Starší SpartaDOS 3.2g a nový LiteDos 307.

DOS Voľná pamäť [B]
SpartaDOS 3.2g 31956
LiteDos 307 33910

LiteDos má svoje muchy a mne žiaľ nefungoval korektne 🙁 ostávam teda pri starom SpartaDose.

Action!
SpartaDos 3.2g
Turbo Basic 1.5

5 thoughts on “Action!

  1. Spätné upozornenie: Poznámky pre majstra – Pedro
  2. Spätné upozornenie: Benchmark – Pedro
  3. Síce je to už dávno, ale ak si dobre pamätám tak skompilovaný Turbo Basic 1.5 dáva k dispozícii o 4kB voľnej RAM navyše (aj som to využíval), čo je celkom dosť.

    1. Díky za info. Nevedel som, ale má to logiku 🙂 Aj v Action! po kompilácii a bez editora je viac pamäte. No ísť na hranu, že jediná šanca ako testovať je kompilovať je trochu otrava.

  4. Používal som to na ukladanie dát, vďaka tomu som dostal do poľa viacej údajov, takže sa to naozaj hodilo.
    V TB som odstal do programu 1000 položiek, kde názov mal 8 znakov, počet kusov jednej položky bol max. 10 000 kusov (moje obmedzenie, max.veľkosť =65535). Po skompilovaní som tam tých položiek dostal bez problémov 1250, takže to pomohlo. Bola to taká moja jednoduchá skladová databáza. (rok 1992 …)

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Táto webová stránka používa Akismet na redukciu spamu. Získajte viac informácií o tom, ako sú vaše údaje z komentárov spracovávané.