Displaying 6 results from an estimated 6 matches for "prevdir".
2008 Jun 17
1
ldlinux: CurrentDir not set if syslinux.cfg is missing
...00000000 +0200
+++ core/ldlinux.asm 2008-06-17 19:36:13.000000000 +0200
@@ -909,6 +909,8 @@
jnz .config_open
mov di,syslinux_cfg3
call open
+ mov eax,[RootDir] ; Make the root directory ...
+ mov [CurrentDir],eax ; ... the current directory
jz no_config_file
.config_open:
mov eax,[PrevDir] ; Make the directory with syslinux.cfg ...
2008 Nov 03
1
[PATCH 1/1] COMBOOT: add get config file full name
...syslinux_cfg3
+ push di
call open
+ pop di
jz no_config_file
.config_open:
+ push si
+ mov si,di
+ mov di,ConfigNameFull
+ call strcpy
+ pop si
mov eax,[PrevDir] ; Make the directory with syslinux.cfg .
mov [CurrentDir],eax ; ... the current directory
diff --git a/doc/comboot.txt b/doc/comboot.txt
index ceee93a..ed63e60 100644
--- a/doc/comboot.txt
+++ b/doc/comboot.txt
@@ -908,3 +908,11 @@ AX=001Dh [3.60] Write auxilliary data...
2009 Mar 21
0
[PATCH 1/1] SYSLINUX/COMBOOT: Abstract searchdir and fix the opendir call
...;
; Assumes CS == DS == ES, and trashes BX and CX.
;
-searchdir:
+searchdir4any:
mov eax,[CurrentDir]
+ mov dl,0
cmp byte [di],'/' ; Root directory?
jne .notroot
mov eax,[RootDir]
@@ -1332,7 +1336,7 @@ searchdir:
dec dx
cmp dx,si
jz .founddir
-
+.searchname:
mov [PrevDir],eax ; Remember last directory searched
push di
@@ -1344,7 +1348,58 @@ searchdir:
cmp byte [di-1],'/' ; Do we expect a directory
je .isdir
- ; Otherwise, it should be a file
+ ; Otherwise, desired file is found
+ ret ; Done!
+
+ ; If we expected a directory, it better be on...
2009 Feb 08
1
[PATCH 1/1] COMBOOT API: Add calls for directory functions; Implement for FAT; Try 2
...+ push si
+ mov si,di
+ push si
+ mov di,CurrentDirName
+ ; This is inefficient as it will copy more than needed
+ ; but not by too much
+ call strcpy
+ mov ax,config_name ;Cut it down
+ pop si
+ sub ax,si
+ mov di,CurrentDirName
+ add di,ax
+ mov byte [di],0
+ pop si
mov eax,[PrevDir] ; Make the directory with syslinux.cfg ...
mov [CurrentDir],eax ; ... the current directory
@@ -945,6 +972,37 @@ allocate_file:
ret
;
+; alloc_fill_dir:
+; Allocate then fill a file structure for a directory starting in
+; sector EAX.
+;
+; Assumes DS == ES == CS.
+;
+; If successful...
2008 Dec 04
2
[PATCH 1/1] COMBOOT API: Add calls for directory functions; Implement for FAT
...+ push si
+ mov si,di
+ push si
+ mov di,CurrentDirName
+ ; This is inefficient as it will copy more than needed
+ ; but not by too much
+ call strcpy
+ mov ax,config_name ;Cut it down
+ pop si
+ sub ax,si
+ mov di,CurrentDirName
+ add di,ax
+ mov byte [di],0
+ pop si
mov eax,[PrevDir] ; Make the directory with syslinux.cfg ...
mov [CurrentDir],eax ; ... the current directory
@@ -945,6 +971,37 @@ allocate_file:
ret
;
+; alloc_fill_dir:
+; Allocate then fill a file structure for a directory starting in
+; sector EAX.
+;
+; Assumes DS == ES == CS.
+;
+; If successful...
2008 Nov 10
2
[PATCH 1/1] COMBOOT API: Add get current working directory call to most
...+ push si
+ mov si,di
+ push si
+ mov di,CurrentDirName
+ ; This is inefficient as it will copy more than needed
+ ; but not by too much
+ call strcpy
+ mov ax,syslinux_cfg3 ;Cut it down
+ pop si
+ sub ax,si
+ mov di,CurrentDirName
+ add di,ax
+ mov byte[di],0
+ pop si
mov eax,[PrevDir] ; Make the directory with syslinux.cfg ...
mov [CurrentDir],eax ; ... the current directory
diff --git a/core/pxelinux.asm b/core/pxelinux.asm
index 4398582..95c5bee 100644
--- a/core/pxelinux.asm
+++ b/core/pxelinux.asm
@@ -704,6 +704,15 @@ prefix: test byte [DHCPMagic], 04h ; Did we get
a p...