Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem ASSEMBLER - nacitanie mena suboru a jeho otvorenie

Zdravim ... nacital som meno suboru a ked ho chcem otvorit (urcite taky mam v projekte) proste napise ze taky subor neexistuje. Mam pocit ze zle nacitavam nazov suboru preto ho to nenajde (znak naviac alebo daco take)

;NACITANIE MENA SUBORU
zadaj_sub:
call clrscr
nacitaj_sub:
vypis uvod_sub ;pomocny vypis
mov ah,0ah ;funkcia DOS na nacitanie retazca
mov dx,OFFSET subMeno ;do dx=zaciatok retazca
int 21h ;prerusenie
cmp subMeno[1],0 ;test ci je prazdny
jz prazdny_sub
xor bx,bx
mov bl,[subMeno+1] ;do bl=skutocnu velkost retazca
mov [subMeno+bx+2],'$' ;na koniec retazca pridaj '$'
jmp menu_vypis
prazdny_sub: ;ak bol zadany prazdny retazec tak skusi nacitat retazec znovu
call clrscr
vypis prazdny_ret
jmp nacitaj_sub

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
mam subor textak halo.txt a ked to tam zadam ze halo.txt stale nic nejde :/ a spravil som to tak ako…
Parker 06.03.2017 21:53
Parker
Ma tam byt 0, ziadne uvodzovky. Skus si trebars napevno buffer DB 'halo.txt',0 mov dx, buffer a za…
MM.. 06.03.2017 22:36
MM..
Pise to uplne to iste :/ dal som mov dx,offset buffer
Parker 06.03.2017 22:55
Parker
BTW. Neni ten halo.txt nahodou uz otvoreny inym programom? Skus ho premenovat.
MM.. 06.03.2017 23:06
MM..
subor je presne v tej zlozke v akej mam obj asm aj exe su tam spolu vsetky skusil som aj premenovat…
Parker 06.03.2017 23:09
Parker
Spustam to cele cez GUI Turbo Assembler aj run
Parker 06.03.2017 23:10
Parker
Ked sa chces vyhnut problemom so zlozkou tak si daj nazov suboru plnu cestu buffer DB 'C:\neco\neco\…
MM.. 06.03.2017 23:15
MM..
ani s plnou cestou to nejde :D :D :D toto je hrozne :/ myslis ze by bol problem ak mam projekt na ex…
Parker 06.03.2017 23:21
Parker
Neviem kde mas problem ale skusil by som si na tvojom mieste stiahnut dosbox, a tam si to skus spust…
MM.. 06.03.2017 23:23
MM..
jasne chapem idem to skusit dakujem :) ozvem sa ci to pojde :) nový
Parker 06.03.2017 23:25
Parker
http://devdocs.inightmare.org/x86-assembly-dos-fil e-inputoutput/ toto proste musi fungovat (OFFSET… nový
MM.. 06.03.2017 23:26
MM..
uz o funguje s DOS Boxom :) dakujem ti velmi pekne :) poslední
Parker 06.03.2017 23:41
Parker

Ma tam byt 0, ziadne uvodzovky.

Skus si trebars napevno

buffer DB 'halo.txt',0

mov dx, buffer
a zavolaj to otvorenie suboru 

potom sa stane co?
Program spustas z jakej zlozky a si vobec v DOSe a ne vo Windows? halo.txt je v ktorej zlozke?

P.S> dos programy by mali ist aj v 32bitovych win, int21 samozrejme emuluje Win.
P.S.2. DS register dufam nemenis nikde, ak ano tak ho musis nastavit nazad jak bol.

Zpět do poradny Odpovědět na původní otázku Nahoru