Talk:D64Lister
From C64-Wiki
Jump to navigationJump to searchD64Lister 1.7.3 By Lars 1. Introduction --------------- Because I wasn't satisfied with all the available D64 lister programs in several aspects I decided to make my own one. The D64Lister is of course Freeware. 2. Abilities and properties --------------------------- The D64Lister is featured with the following abilities and properties, which are described more precise later on: - Windows based (Win9x, WinNT, Win2000, WinXP, WinVista, Windows7) - Multifile support - Extended Recursive OpenDialog with Directory selection - D64 Images as parameter - Images can be drag&dropped - 40 Tracks Support (SpeedDOS, DolphinDOS, PrologicDOS) - 99% PETSCII -> ASCII conversion - 99% Original C64/1541 behaviour - ASCII Textfile generation - RichTextFormat file generation - Appending of new Textfiles to existing ones - Upper/Lower -> Upper/Graphics Char switching - Emulated C64Screen - C64Screen is zoom - and scrollable - Comfortable OptionsDialog with *.ini File - GEOS File support - Auto Upper/Lower Char switching for GEOS Files - GEOS File Details - GeoWrite Textviewer with styles, fontsizes, formats and photoscraps - GEOS Font Shower - GeoPaint Viewer - PhotoScrap Viewer - PhotoAlbum Viewer - GeoPaint pictures and PhotoScraps are saveable - Fonts zoom - and saveable (as bitmap) - Zoomable display of GEOS icons - Export function for supported GEOS Filetypes - Show BAM (with diskerrors like StarCommander) - Show BAM entry -> filename, filename -> BAM entries - BlockViewer in hex or char - FileViewer with BASIC Command Detokenize, C64 program export and Hex View All Options and the last loading path are saved in the D64Lister.ini *.ini file. If a file called D64Lister.ini is present in the same folder where the D64Lister.exe is, this file is used as *.ini file, so the D64Lister can be used portable. Otherwise since Windows XP the *.ini file is saved in the user Application Data folder. For Windows Versions older than Windows XP the *.ini file is saved in the Windows Folder. Load ---- The D64Lister is a full Windows Application and not a new DOS tool with output redirection. An from the D64Lister unlimited amount of D64 images can be opened at once and their directory will be listed in C64/1541 format (including Blocks free and filetype). Therefore, click on one of the "Load" buttons and choose the wanted images. There are two kinds of OpenDialogs: The normal OpenDialog: With CTRL/shift and leftmouse the images can be chosen. CTRL+A chooses all images in the actual directory. Doubleclick chooses only one image. The extended OpenDialog: After choosing a directory the D64 images found (with wildcard mask) are displayed in the FileList on the right. Here you can choose the wanted images or complete directories by checking the checkboxes. Additional a with leftclick dragged rectangle checks the images and a with rightclick dragged rectangle unchecks them again. With "Initial Directory" you can choose ("Pick" or type) where to start the next time opening the Dialog. Here the following special locations are valid: - DESKTOP : Desktop - DRIVES : My Computer - NETWORK : Network Neighborhood - NETHOOD : My Network Places - PERSONAL : My Documents The FileList Window can be resized on the right border. This setting becomes valid the next time opening the Dialog. A click on the "OK" Button lists the images. A new loading will clear the list on the Mainform. The "List" button lists the last loaded D64 image again. It is possible to open the D64Lister with D64 images as parameter. So you can include the D64Lister as your default D64 Lister in Windows. No ASCII file will be created automatically. You can also open images by drag&dropping directories or files on the Mainform. ASCII file ---------- The directory can be viewed in the Mainform and/or an ASCII file with nearly full PETSCII -> ASCII conversion (codepage 850) can be generated. Therefore the checkbox "Generate ASCII File" on the Mainform has to be checked. The ASCII file can be viewed or printed in textmode (DOS prompt) with for example "edit.com". In Windows for example "DIZzy", "UltraEdit32" or "VEdit32 Plus" can be used to display the ASCII file correctly. Also any Text Editor should work, where the "Terminal" Font from Windows, which should emulate the textmode, can be selected. Some recommended Tools are "Jane", "Angel Writer" or "Kool Padding". Here you can set the "Terminal" Font as default (Fontsize 6 or 12) and can also open RTF files (not with "Jane"). For a collection of editors refer to for example http://www.heise.de/software/download/o0g0s3l11k17 . The generated ASCII or RTF files can also be viewed in the D64Lister with File->Import. A click on the "Save" Button let you choose between Textfile or RTF file. The RTF file uses the "Terminal" Font from Windows. You can also copy (CTRL+C) the text from the Mainform. The "ASCII Textfile" is the same as the "Generate ASCII File" file. Choosing "ANSI Textfile" does some conversion to chars Windows cannot display correctly. The PETSCII -> ASCII conversion uses a slightly modified conversion table from Joe Forster/STA (StarCommander). The name of the ASCII file can be chosen in the OptionsDialog: - use the name of the image (default name) - use your own name (insert name) If the file already exists, you can choose between the following options: - Append - Overwrite - Insert new name - Cancel The directory, where the ASCII file should be saved, can be chosen in the same way in the OptionsDialog: - Use the directory where the image was (default path) - Select a different directory or create a new one (select path) If more than one image is opened the name of the directory (default name) or an earlier inserted name (insert name) will be used for the ASCII file (multifile name). The resulting savename can be displayed after successful saving. Additional a header (check "Generate Header" in the OptionsDialog) can be added before every listed image in the ASCII file, which includes the name of the image and some good visible separating lines. C64Screen ---------- For control or only to have a quick look into an image the C64Screen was implemented (click on "C64Screen"). This screen uses the original char from the C64 (CharROM), so it displays the directory like the original C64. The screen is zoom- and scrollable. With "Options | Images in C64Screen" the number of displayed images can be limited, because drawing the graphics in the C64Screen needs some time. The following keys are valid: - "+", "-" and "*" Zoom Upper/Lower -> Upper/Graphics Charset ------------------------------------- The C64 have two Charset modes: the Upper/Graphics and the Upper/Lower mode. Filenames can be saved in these different modes, too. The D64Lister supports these two modes. You can switch between them manually, or use the automatic recognition (Options | Auto GEOS conversion): - BASIC files are displayed in Upper/Graphics - GEOS files are displayed in the C64Screen in Upper/Lower and are saved in the ASCII file with standard ASCII (GEOS uses standard ASCII) The Graphic Chars are converted as good as possible to the available ASCII Graphic Chars. The Upper/Graphics or Upper/Lower Buttons on the Mainform are used in all PETSCII conversions of the D64Lister. Interpret Specialchars ---------------------- Specialchars can be present in Disknames and Filenames. The Option "Interpret Specialchars" enables their translation while listing. The following Specialchars are translated: - 0x0D Return - 0x8D Shift Return - 0x12 Reverse On - 0x92 Reverse Off - 0x1D Cursor Right - 0x9D Cursor Left - 0x14 Delete Note that no linebreak is done for the Return chars. The other Specialchars (e.g. Cursor Down, Home, Clear, and so on) will be ignored, but their resulting behaviour (e.g. Rev Off) is simulated. Disknames are limited to 80 chars (like on the C64), Filenames are limited to 40 chars. After Quotes Chars greater than 0x80 are interpreted as BASIC Tokens in Disknames, e.g. Char 0x8D will be displayed as "GOSUB" instead of "Shift Return". With the Option "Display BASIC V2 Tokens" these interpretation can be enabled. The BASIC V2 Tokens can be displayed and edited in the Token Table in the FileViewer Options. GEOS Support ------------ If GEOS files are found while listing the directory, the File Ending ($80 - DEL, $81 - SEQ, $82 - PRG, $83 - USR, $84 - REL) is replaced with GEOS Filetype Endings. These are: BAS ($01) - BASIC ASS ($02) - Assembler DAT ($03) - Data file SYS ($04) - System File DAC ($05) - Desk Accessory APP ($06) - Application DOC ($07) - Application Data FON ($08) - Font File PRN ($09) - Printer Driver INP ($0A) - Input Driver DRV ($0B) - Disk Driver (or Disk Device) BOO ($0C) - System Boot File TMP ($0D) - Temporary AUT ($0E) - Auto-Execute File If the checkbox "Generate GEOS File Details" in the OptionsDialog is checked, the Info Block of a GEOS File inclusive icon is added to the "GEOS File Details" List. A Rightclick on the List shows the Options PopUp Menu. A Doubleclick on a GeoWrite File opens the GeoWrite Viewer where the contents of the File is displayed. A Doubleclick on GEOS Fonts, GeoPaint Pictures, PhotoScraps and PhotoAlbums open different Windows where the resulting bitmap can be saved or Options can be set. By doubleclicking on a not supported GEOS File its icon will be displayed in a separate window and can be saved as a bitmap (Rightclick). The "GEOS File Details" List is independent from the "Clear" button on the Mainform. In the PhotoAlbum Viewer the following keys are valid: "+", "-" and "*" Zoom "PgUp" and "PgDown" next/prev Scrap A click on the export function in the PopUp Menu will export all selected supported entries to their resulting filetypes, i.e. Fonts and GeoPaint Pictures are exported as bitmap and GeoWrite Files are exported as a RTF Textfile. Before saving the List a choicebox will come up allowing you to select which segments of the Info Block should be saved. If problems come up by sorting the List (the GEOS Details ListView only supports the used sorting algorithm with comctl32.dll Version 5.80 or later) an own sorting routine can be used. Therefore the following entry has to be added to the D64Lister.ini: [GeosDetails] OwnSort=1 GeoWrite -------- Over the ContextMenue from the GeoWrite Viewer the Option can be switched on to replace the used GeosFonts through its FontID over a Lookup Table with Windows Fonts. Therefore a Lookup Table must be inserted in the *.ini File. The entries must have this Format: GeosFontID=FontName; [FontTable] -1=Arial; Default 0000=Berkelium 64; BSW 64 0001=Arial; University 0002=Helvetica; California 0003=Times New Roman; Roma 0004=Olde English; Dwinelle 0005=JLS Space GothicR NC; Cory 0006=Comic Sans MS; Tolman 0017=Broadway; Superb 0019=Microgramma D OT Medium Extend; Ormond 0025=MacType; LeConte 0026=Pet Me 64; Commodore 0027=Times New Roman; LW_Roma 0028=Helvetica; LW_Cal 0030=Courier New; LW_Barrows 0056=Arial; University_GE, University LQ 0057=Helvetica; California_GE, California LQ 0064=Times New Roman; Roma_GE, Roma LQ 0065=Olde English; Dwinelle_GE 0066=JLS Space GothicR NC; Cory_GE 0088=Times New Roman; LW_Roma_GE 0089=Helvetica; LW_Cal_GE 0091=Courier New; Barrows_LQ, LW_Barrows_GE 0128=Berkelium 64; BSW 128 0129=Pet Me 64; Commodore_GE ;0129=Commodore; This is an Example to rem out an entry 0736=Comic Sans MS; Tolman LQ 0745=Broadway; Superb LQ 0980=Olde English; Dwinelle_GE LQ The table ist sorted by the GeosFontID while reading. The topmost Entry ist used as default if a FontID present. It is recommented to use -1 as the default entry. If you just want a different DefaultFont, just enter this. The FontName is the Name displayed in for example Word, not the Filename of the FontFile. The FontName ends with a semicolon, following Chars are ignored and ca be used as a comment. The Table isn't completed yet and can be expanded. Please have a look at: https://www.forum64.de/index.php?thread/73537-geos-fonts-als-truetype/ BAMViewer/BlockOwner/FileViewer/BlockViewer ------------------------------------------- In the BAMViewer (click on the BAM button on the Mainform) the BAM (Block Allocation Map) of the last loaded image is shown. Disk Errors (generated with e.g. StarCommander) are shown with a red frame and the errornumber. For undisturbed use of the BlockViewer with Rightclick type 'd' in the BAMViewer to deactivate the PopUp Menu. 'a' activates the Popup again. A click on "Show Block Owner >>" Button opens a List with the files of the actual image. A click on a filename shows its BAM entries. A click on "Show Chain" gives the numbered BAM entries with the following meanings of the colors: - Red indicates an error. Doubleclick to get a little description - Green indicates, that the Block is used by the file. For GEOS VLIR files it’s the VLIR - Fuchsia indicates, that the Block is used by the file and has an error - Blue indicates a VLIR Block. The number is !not! the original VLIR number, it's the absolute VLIR number (starting at 1). - Yellow shows the Blocks of a VLIR Block. The parent VLIR Block number is shown in the right top. The Block number is shown at the left bottom. - Pink indicates the GEOS Info Block. A click on a BAM entry highlights the accompanying filename. A Rightclick on a file opens the FileViewer: A Rightclick on a Block opens the BlockViewer: FileViewer ----------- In the FileViewer the following options are available (click "Options" Button or menuitem): - Convert to ASCII Converts the file to ASCII using the PETSCII -> ASCII Conversion table - Convert to chars Converts the file to chars or show it in Hex - Replace 0x0D with a newline In most SEQ files 0x0D is used to do a newline - Detokenize BASIC Commands are stored as BASIC Tokens. To detokenize a BASIC File click on the Detokenize Button labelled with "TOK64". The detokenize function was implemented with help from TOK64, it's source code, PETCAT and it's source code, but for now they have nothing in common anymore. Thanks to Cris Berneburg for TOK64 and Jouko Valta for PETCAT. Optional you can additionally choose between the following modes (Default): - Final Cardridge 3 - Simons BASIC - TSB (Tuned Simons BASIC) - Graphics52 - BASIC V3.5 - BASIC V7 - BASIC V7.1 - BASIC V10 If Detokenize was successful, BASIC Commands and Specialchars (for example {Up}, {Down}, {Home}) are shown in different colors adjustable in the Token Table. The translation of the Specialchars can be disabled in the FileViewer Options. - Token Table A click on the Button "Edit" next to the BASIC Mode Selection in the FileViewer Options opens the Token Table. Here the Tokens for the different BASIC Modes and the Specialchars are displayed and can be edited. The following Properties can be found in the Header Area: - Number Numbering of the Columns - Name The Name of the Tokenset. If the Name is set in Brackets it won't be added to the BASIC Mode Selection in the FileViewer Options - Extension Of Number of the Tokenset to extend. E.g. BASIC V7 is an extension of BASIC V3.5 which is an extension of BASIC V2. If the Tokenset is not extended a "-" must be inserted. The Tokensets are scanned from Top (the chosen BASIC Mode) to Bottom (the last Tokenset with "-" as Extension Of) for matching Tokens inclusive Prefix. - Type The BASIC Mode can be detected and / or tested by the Startaddress of the file. BASIC Extensions (Type 5, 6, 7) can't be autodetected. The BASIC Startaddresses can be displayed and edited by clicking on "Edit" next to the "Ignore Startaddess" Button in the FileViewer Options. - Type 0 Startaddress won't be tested - Type 1 indicates Specialchars - Type 2 indicates BASIC V2 Startaddress - Type 5 indicates BASIC V2 Extensions - Type 3 indicates BASIC V3.5 Startaddress - Type 6 indicates BASIC V3.5 Extensions - Type 4 indicates BASIC V7 Startaddress - Type 7 indicates BASIC V7 Extensions - Color Type Selection of the used Color for Syntax Highlighting. The Color can be edited with "Change" in the right of the Token Table Window. - Prefix Some Tokensets uses Prefixes to indicate a Token. Insert this Prefix here (for Hex Numbers use 0x). If the Tokenset has no Prefix insert "-". - Comment Token Indicates the Token used for Comments. In BASIC V2 this is 0x8F (REM). The Comment Token will be displayed with the for Color Type 15 chosen Color. - Detok Comment Option for further detokenizing within a Comment (1) or displaying as Text (0). The Tokens have to be in ascending Order for proper function. With "Use Custom Token Table" a own CSV File with Tokensets is loaded the first time needed (i.e. Open Token Table or Detokenize). This CSV file can be edited in e.g. "Excel" or "CSVEd". The Token Table Window supports copy/Cut/Paste. The List separation char is automatically detected through the "Number" Row. So an own Token Table can be made with further or other Tokensets. Further Tokensets can be found in e.g. cbm_basic_tokens.txt supplied with Vice or at http://www.npsnet.com/danf/cbm/languages.html#BASIC Caution: Not everything can be checked, so fill the Header Area carefully for a new Tokenset with respect to the default sets. To use the Custom Token Table at Startup of the D64Lister (for example "Display BASIC V2 Tokens" at listing) add the entry LoadAtOnCreate=1 in the Section [TOK64] in the D64Lister.ini. - Save as... You can save the file as a "RTF File", "txt File" or "C64 Program" with and without Startaddress. The Upper/Graphics or Upper/Lower Buttons on the Mainform are also used in the FileViewer. BlockViewer ----------- The BlockViewer displays the selected Block dependently from the FileViewer Options. Additional Options ------------------ In the OptionsDialog the following functions can be enabled: - Convert Everything Converts alphanumeric chars, too. Instead, only Graphic and other chars are converted to ASCII. - Show deleted files Displays files which are signed as scratched in the directory. If their name is longer than 0 chars these files can be undeleted possibly ... - Convert Disknames The Diskname of the image will be converted, too. This can be useful if there are Graphic Chars in the name. GEOS disks will be recognized and won't be converted (GEOS uses standard ASCII). - Allow more than 144 Files Normal Images only use track 18 as directory track. This results in maximal 144 Files. Some special Images are using additional tracks for the directory, too. With this option checked you can fully list them, but it's limited to 288 Files. 3. Future Versions ------------------ 4. Dlls ------- 5. Thanks go to --------------- Bacchus/FLT Joe Forster/STA Robert Rottmerhusen Jan Stuhler Stefan Weber Cris Berneburg Jouko Valta Robert Dunn Werner Weicht Arndt Dettke For TOK64 visit: ftp://ftp.zimmers.net/pub/cbm/programming/msdos/ 6. Bugs ------- Bug reports or other suggestions or ideas send to: d64lister@hotmail.com