Image Map Image Map
Results 1 to 9 of 9

Thread: Dos utility .. ? Exists

  1. #1

    Default Dos utility .. ? Exists

    I have a task where I need to get a byte array (about 180kB) into memory, at a known starting address, in my IBM5155..running DOS 3.3. I have the array as a .Hex file. I want to operate on those bytes with an 8088 assembly language program I can write and and then retrieve the bytes to another .hex file on a floppy.

    Is there a pre-existing DOS software utility where you can open a chosen hex file from disk, load it to memory, starting at a user selected address, and also dump the memory from a known address to floppy as a new .hex file ?

    Obviously I could write a program using a DOS 21H and read and write function calls, but I wondered if there is an existing program that could do it for me ?

  2. #2

    Default

    debug. well, unless debug is sitting in the address space you need... but you'd need to do some hex 2 bin shenanigans and convert it...

  3. #3
    Join Date
    Mar 2017
    Location
    New Jersey, USA
    Posts
    468

    Default

    If you can get the data converted from hex format to a binary image, you may be able to use DEBUG to load and save. I'm not certain whether any of the N, L or W commands are specific to a particular DOS version but you would use "N filename.ext" or "N C:\dir\filename.ext" to identify the name of the file, and something like "L 8000:0" to load from file, or "W 8000:0" to write data (with BX:CX register pair holding a 32-bit value indicating how many bytes to write).

    This might simplify your search to finding hex2bin and bin2hex converters.

  4. #4
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    31,775
    Blog Entries
    20

    Default

    What the two previous posters said.

    DEBUG understands HEX format on input, but there are also converters between HEX and binary format.

  5. #5
    Join Date
    Aug 2006
    Location
    Chicagoland, Illinois, USA
    Posts
    5,942
    Blog Entries
    1

    Default

    If the "load at a very specific memory address" requirement isn't necessary, there are certainly DOS hex editors for binary files. Otherwise, DEBUG comes with every DOS 2.x and later...
    Offering a bounty for:
    - The software "Overhead Express" (doesn't have to be original, can be a copy)
    - A working Sanyo MBC-775, Olivetti M24, or Logabax 1600
    - Music Construction Set, IBM Music Feature edition (has red sticker on front stating IBM Music Feature)

  6. #6

    Default

    Thank you all for the replies, I will try debug.

  7. #7

    Default

    Quote Originally Posted by kgober View Post
    If you can get the data converted from hex format to a binary image, you may be able to use DEBUG to load and save. I'm not certain whether any of the N, L or W commands are specific to a particular DOS version but you would use "N filename.ext" or "N C:\dir\filename.ext" to identify the name of the file, and something like "L 8000:0" to load from file, or "W 8000:0" to write data (with BX:CX register pair holding a 32-bit value indicating how many bytes to write).
    Great, Thanks, DEBUG works like a charm for this task.

  8. #8

    Default

    Quote Originally Posted by kgober View Post
    If you can get the data converted from hex format to a binary image, you may be able to use DEBUG to load and save. I'm not certain whether any of the N, L or W commands are specific to a particular DOS version but you would use "N filename.ext" or "N C:\dir\filename.ext" to identify the name of the file, and something like "L 8000:0" to load from file, or "W 8000:0" to write data (with BX:CX register pair holding a 32-bit value indicating how many bytes to write).

    This might simplify your search to finding hex2bin and bin2hex converters.
    Soon, I need to do the same thing in my SOL-20 running CP/M 2.2. Will DDT do this too where I can open (in this case) a named binary file on disk , read it and select a specific starting address to load it to in RAM ?

    If not, then I would have to use BDOS function calls to open & presumably sequential read the file and place at my selected address. But my CP/M books do not show an exact example of how to do this with an 8080 assembly language routine, so an example of how to do that would help me a lot. (In this case I don't need to write the file back to disk or modify the disk file)
    Last edited by Hugo Holden; July 11th, 2019 at 02:29 PM.

  9. #9

    Default

    ...... I have partly answered my last question. DDT can do the same as Debug, but it is a bit more tricky. It is in Digital Research's original DDT document.

    The file can be opened with the I(input) command) then the R command is used. But it has to be a .Hex or .COM file

    If the .BIN file I have is treated and re-named as a .COM file, DDT will load it to RAM . It assumes a starting point of 100H for a .COM file, but you can add an offset with the R command, following the I command, so if R4000 in entered (after executing the I command), it loads the .COM file to RAM starting at 4100H.

    In the meantime I had been working on the 8080 assembly language program to read the file directly from disk to ram, but I have not got it to work......yet.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •