Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
nidud

E-mail

Norway,
20.07.2011, 15:41
 

The Doszip Commander version 2.12 available (Announce)

Home page: https://sourceforge.net/projects/doszip/
Download: https://sourceforge.net/projects/doszip/files/

Changes in 2.12 - 20 Jul 2011:
- changed Quick Search function
- changed Memory functions to dynamic allocation
- reduced amount of memory used by DZ.EXE to 1024 byte
- added Memory Information dialog (Alt-M)

Memory:
The memory allocation in DZMAIN has been static. It allocates a chunk of memory by resizing the program to around 256K. This was done to speed up the allocation of small blocks. If the block was filled, it grabs all available memory left, and does not free this before exit. This creates a problem if you load a TSR on top of the program, which tries to allocate memory, so the malloc function is now dynamic.

The DZ.EXE loader was extended to 2084 byte to make room for a config struct. This was done to prevent reloading of defaults on write-protected media (CD/Floppy). This is now removed, and the size is now reduced to 1024 byte.

A Memory Information dialog is added:
[image]

nando

24.07.2011, 07:12

@ nidud

The Doszip Commander version 2.12 available

Thank you for creating and posting info on Doszip. It's much smaller than a lot of other utilities and does what I want. Though there is one enhancement I'd like to request:

1. When I configure my external pictview viewer for jpg/pcx/bmp files in dz.ini as follows, pictview can't read the file since it's passed in LFN format which it doesn't support. Workaround is switch off LFN (ALT+L) prior to hitting enter on it so it passes short file names instead.

[Filetype]
bmp=pictview !.! > %TMP%:nul
jpg=pictview !.! > %TMP%:nul
pcx=pictview !.! > %TMP%:nul


Wondering if instead you can add Necromancer's DN expansion options shown below so I could change the "!.!" to be "!~\~!.!~"?

;    !:  - Drive letter + :
;    !\  - Long path name
;    !   - Long file name (w/o extention)
;    .!  - Long file name extention
;    !~\ - Short path name
;    ~!  - Short file name (w/o extention)
;    .!~ - Short file name extention


Nando

---
See nando4 NBR profile

nidud

E-mail

Norway,
24.07.2011, 16:28

@ nando

The Doszip Commander version 2.12 available


;    !!  - !

I agree, and this should probably include the [edit] and [view] section also.

In some cases there are no need to add the file to the command line, so maybe this should be forced?

nando

25.07.2011, 16:19

@ nidud

The Doszip Commander version 2.12 available

>
> ;    !!  - !
>

> I agree, and this should probably include the [edit] and [view] section
> also.
>
> In some cases there are no need to add the file to the command line, so
> maybe this should be forced?

Not sure what you mean exactly.

I tried another NC clone called DOS Command Center 5.1 (google 'DCCv51e.zip') with file stamps from 1999. Was impressed at how the panels could be enabled/disabled by clicking their corner. Perhaps another feature you could consider adding? DCC is otherwise far too large a package for my purposes. DOSZip is nice and small :)

---
See nando4 NBR profile

nidud

E-mail

Norway,
25.07.2011, 19:37

@ nando

The Doszip Commander version 2.13 available

> Not sure what you mean exactly.
I was thinking of makefile=make, where no argument is needed, but I left it as it was.

Normally if no macros are used quotations is added to "long name.files".

If LFN macros are used, quotes should be included:
bmp=mspaint "!:!\\!.!"
or
bmp=pictview ~!.!~

> DOSZip is nice and small :)
And now 64 byte larger..

Changes in 2.13 - 25 Jul 2011
- added file-macros for [Filetype], [Edit], and [View]

nando

26.07.2011, 03:31

@ nidud

The Doszip Commander version 2.13 available

> Changes in 2.13 - 25 Jul 2011
> - added file-macros for [Filetype], [Edit], and [View]

Thank you for the fix. I confirmed it works as requested.

PS: While awaiting the fix I found File Wizard and defected to it. It has a remarkable feature set yet still maintains a small footprint: http://www.unet.univie.ac.at/~a0503736/php/drdoswiki/index.php?n=Main.FileWizard . The link has it's source code as well.

---
See nando4 NBR profile

nidud

E-mail

Norway,
26.07.2011, 13:41

@ nidud

The Doszip Commander version 2.14 available

Changes in 2.14 - 26 Jul 2011
- fixed bug in Panels on parsing file-macros

Rugxulo

Homepage

Usono,
29.07.2011, 08:32

@ nidud

The Doszip Commander version 2.14 available

> Changes in 2.14 - 26 Jul 2011
> - fixed bug in Panels on parsing file-macros

Whew, since iBiblio has had such an old, old version for so long, and since I barely have access, I decided to update for you/us/them:

http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/util/file/doszip/

EDIT: Okay, I guess 1.54 may not be that old (a year?). ;-)

nidud

E-mail

Norway,
29.07.2011, 14:18

@ Rugxulo

The Doszip Commander version 2.14 available

> EDIT: Okay, I guess 1.54 may not be that old (a year?). ;-)

The version of the files is the date and time in the .ZIP file:

Version 1.54, 17 Jun 2010, Time 1:54
Version 2.14, 26 Jul 2011, Time 2:14

So the version 0159h was replaced by version 0200h.

nidud

E-mail

Norway,
27.08.2011, 14:56

@ nidud

The Doszip Commander version 2.15 available

Home page: https://sourceforge.net/projects/doszip/
Download: https://sourceforge.net/projects/doszip/files/

Changes in 2.15 - 27 Aug 2011
- fixed bug in Filter dialog - Time/Date input
- fixed bug in Setup dialogs - memory
- added section [Load] to DZ.INI

> so the malloc function is now dynamic.
When it was static, data blocks could be used after delete, not any more..

The [Load] section is executed on first call.
The file DZ.EXE should not be used here.

Doszip have a multi-line edit function used in dialogs to edit text-windows. The commander has never used this since there is only one-line input in the dialogs used. This has now been extended in an attempt to include an integrated text editor to the commander.

This is not implemented in the binary release, but included in the source code: WMAKE tedit=1

The basic framework of the editor is made, but it is currently unstable.
This will be a simple full-screen editor, which adapt to the current screen mode. Some (J)EMM pages is assigned to each open file if available, so it has also the potential to edit large files, but the aim is to have a small editor available for .INI and config files. It will also enable Search/Replace/Edit from the File search dialog.

This uses Japheth?s SETM48 ? 128x48 lines text mode. The size of a line in memory must be larger then the screen line. Default is 128.
[image]

Japheth

Homepage

Germany (South),
28.08.2011, 13:26

@ nidud

The Doszip Commander version 2.15 available

> Changes in 2.15 - 27 Aug 2011
> - fixed bug in Filter dialog - Time/Date input
> - fixed bug in Setup dialogs - memory
> - added section [Load] to DZ.INI

Thanks!

I'll take the opportunity to report a few bugs. They're neither serious nor annoying, just for the record:

- DC works with text page 0 only. If the current page is 1, DC starts and waits for input, but nothing is displayed.

- If a "chdir" to a sub-directory fails, DC just remains in the current directory and doesn't notify the user that something went wrong. [ Usually a "chdir" does fail in DOS because the SFN of the directory path would violate the max. size of 64? This also happens if DOSLFN is loaded, because internally DOSLFN uses the SFN functions ]

- DC works in text page 0 only, but it pollutes the first few (8?) attributes of text page 1 when a menu is opened.

---
MS-DOS forever!

nidud

E-mail

Norway,
28.08.2011, 17:07

@ Japheth

The Doszip Commander version 2.15 available

> - DC works with text page 0 only. If the current page is 1, DC starts and
> waits for input, but nothing is displayed.

A test is added and page 0 is now set, but I also need to save the init page for Ctrl-B (user screen) - this function mess up the screen..

> - If a "chdir" to a sub-directory fails, DC just remains in the current
> directory and doesn't notify the user that something went wrong. [ Usually
> a "chdir" does fail in DOS because the SFN of the directory path would
> violate the max. size of 64? This also happens if DOSLFN is loaded, because
> internally DOSLFN uses the SFN functions ]

The approach to this seems to be to set the index 0 and reread the current directory. A message should be inserted there.

> - DC works in text page 0 only, but it pollutes the first few (8?)
> attributes of text page 1 when a menu is opened.

I assume this to be the Menus-info-text on the status-line.

Page 0:
[image]
Page 1 with one line overlap:
[image]

nidud

E-mail

Norway,
28.08.2011, 21:52

@ nidud

The Doszip Commander version 2.16 available

Changes in 2.16 - 28 Aug 2011
- fixed bug in Screen setup - active view page
- fixed bug in Menus - overlap of view page
- added error message on Change directory
- fixed bug in Alt-Left/Right - Panel history
- changed Ctrl-B (User screen) - only use if line size = 80

Japheth

Homepage

Germany (South),
30.08.2011, 10:47

@ nidud

The Doszip Commander version 2.16 available

> Changes in 2.16 - 28 Aug 2011
> - fixed bug in Screen setup - active view page
> - fixed bug in Menus - overlap of view page
> - added error message on Change directory

Thanks! I tested the fixes, everything seems ok.

I have a question about the tools menu: my "tools" are usually just fast "switches" to certain directories. However, this may imply to change both the current drive and the current directory - which needs 2 commands with MS-DOS command.com ( i.e. D: and then CD \MyFavoriteProject ). Can such a sequence be entered in DZ.INI? Or do I need a .BAT file for this?

---
MS-DOS forever!

nidud

E-mail

Norway,
30.08.2011, 11:27
(edited by nidud, 30.08.2011, 13:08)

@ Japheth

The Doszip Commander version 2.16 available

> I have a question about the tools menu: my "tools" are usually just fast
> "switches" to certain directories. However, this may imply to change both
> the current drive and the current directory - which needs 2 commands with
> MS-DOS command.com ( i.e. D: and then CD \MyFavoriteProject ). Can such a
> sequence be entered in DZ.INI? Or do I need a .BAT file for this?

This may help?:
XX=D:|cd\MyFavoriteProject

Not shore if this is in the documentation (or in the default .INI file) but this should work:

[Directory] ; Directories for Ctrl-[0..9] and Alt-P
00=Doszip &Directory          Ctrl-0, %doszip%
01=&Include Directory         Ctrl-1, %doszip%\inc
02=&CLIB Directory            Ctrl-2, %doszip%\src\crtl
03=&Tools Directory           Ctrl-3, %doszip%\src\tools
04=&Project Directory         Ctrl-4, %doszip%\prj
05=&Make Directory            Ctrl-5, %doszip%\src\make
06=&Document Directory        Ctrl-6, %doszip%\doc
07=&Temp Directory            Ctrl-7, %TEMP%

Alt-Left/Right is also useful here.

[Edit]

A more dynamic way to save the current directory and restore it later may be implementet like this:

[Tools]
XX=Save current directory, %doszip%\cdpush
XX=Restore directory, %temp%\cdpop

; CDPUSH.ASM--
; Save current directory to %TEMP%\cdpop.bat

        .186
        .model  tiny
        .code

        org     100h
start:  jmp     around

_psp    dw      0
envlen  dw      0
cdpop   db      'cdpop.bat',0
@echo   db      '@echo off',13,10
drive   db      'A:'
crlf    db      13,10
        db      'CD\'
cd      db      80 dup(0)
temp    db      80 dup(0)

exit:   pop     dx
        push    ax
        mov     ah,9
        int     21h
        pop     ax
terminate:
        mov     ah,4Ch
        int     21h
abort:  mov     al,3
        call    exit
        db      'Abnormal program termination',13,10,'$'

getcwd: push    si
        mov     si,offset cd
        xor     dx,dx
        mov     ah,47h
        int     21h
        mov     ax,0
        jc      getcwd_end
        mov     ax,si
    getcwd_end:
        or      ax,ax
        pop     si
        ret

write:  mov     bx,si
        mov     ax,4000h
        int     21h
        ret

strlen: push    di
        push    ds
        pop     es
        mov     di,ax
        or      ax,ax
        jz      strlen_00
        xor     ax,ax
        cld
        mov     cx,-1
        repnz   scasb
        mov     ax,cx
        not     ax
        dec     ax
    strlen_00:
        pop     di
        ret

around: push    offset abort
        xor     si,si
        mov     dx,ds
        mov     [si+_psp],dx
        mov     bp,[si+02h]
        sub     bp,dx
        mov     es,[si+2Ch]
        xor     ax,ax
        mov     bx,ax
        mov     di,ax
        mov     cx,7FFFh
        cld
    startup_envloop:
        cmp     word ptr es:[di],'ET'
        jne     startup_nextenv
        cmp     word ptr es:[di+2],'PM'
        jne     startup_nextenv
        cmp     byte ptr es:[di+4],'='
        je      startup_found
    startup_nextenv:
        repne   scasb
        inc     bx
        cmp     es:[di],al
        je      startup_fail
        or      cx,cx
        jnz     startup_envloop
    startup_fail:
        mov     ds,dx
        ret
    startup_found:
        push    es
        pop     ds
        mov     es,dx
        mov     si,di
        add     si,5
        mov     di,offset cd
    startup_loop:
        lodsb
        or      al,al
        jz      startup_break
        stosb
        jmp     startup_loop
    startup_break:
        mov     ds,dx
        mov     si,offset cdpop
        mov     al,'\'
        stosb
    startup_loop2:
        lodsb
        stosb
        or      al,al
        jnz     startup_loop2
        mov     dx,offset cd
        mov     ah,3Ch
        xor     cx,cx
        int     21h
        mov     si,ax
        jc      startup_fail
        mov     ah,19h
        int     21h
        add     drive,al
        mov     dx,offset @echo
        mov     cx,18
        call    write
        jc      oswrite_error
        call    getcwd
        mov     ax,offset cd
        call    strlen
        mov     cx,ax
        mov     dx,offset cd
        call    write
        jc      oswrite_error
        mov     dx,offset crlf
        mov     cx,2
        call    write
        jc      oswrite_error
        mov     bx,si
        mov     ah,3Eh
        int     21h
        xor     ax,ax
        jmp     terminate
    oswrite_error:
        mov     bx,si
        mov     ah,3Eh
        int     21h
        mov     al,1
        jmp     terminate
        end     start

Japheth

Homepage

Germany (South),
01.09.2011, 10:22

@ nidud

The Doszip Commander version 2.16 available

> This may help?:
> XX=D:|cd\MyFavoriteProject
>


Thanks! That works.

---
MS-DOS forever!

Back to the board
Thread view  Mix view  Order
22632 Postings in 2109 Threads, 402 registered users, 288 users online (0 registered, 288 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum