Loading ...
Sorry, an error occurred while loading the content.

ElfTools - Loop Back Success!

Expand Messages
  • aa3nm
    All, The question of the viability of using WAV and MP3 formats to preserve and even distribute 1802 software has come up several times in the past few years.
    Message 1 of 3 , Apr 6, 2010
    • 0 Attachment
      All,

      The question of the viability of using WAV and MP3 formats to preserve and even distribute 1802 software has come up several times in the past few years. My feeling is that this format is likely to be the most universal based on the wide variety of systems in use by the members.

      Richard Dienstknecht produced a very nice tool that has been overlooked on occasions for processing back and forth between .WAV and binary formats for both ELF II and Quest Super Elf formats.

      One drawback of Richard's ELF Tool is that it cannot re-process .WAV files it produces from .BIN files natively. I wanted to remove this limitation and along the way, quell any fears that this could become a one way street.

      I conducted an experiment in sound file processing using readily available tools and I present my results as follows:


      After assembling latest version of Quest Tiny Basic using the Psudosam assembler (its just what I use) the resulting OBJ file was converted to binary using the DOS Hex2bin utility. The BIN file was then loaded into HexEdit and compared against the data file read from the original Quest Proms. The files matched.

      Using ElfTools, a WAV file for the Super ELF format was generated. Since ElfTools cannot process WAV files it has generated directly, some post processing was necessary to allow ElfTools to reprocess the file. The method I used was intended to emulate the effects of recording and playing back from cassette tape, thus placing the ElfTools generated "Perfect" digital sound file back into the analog sound file domain.

      I used GoldWave to load the ElfTools generated wave file. Zooming in to the mid data section, I could see that the file was wide band audio information showing nice square waveforms with essentially instantaneous transitions between states. First I reduced the volume by 1dB to prevent clipping. Then I configured GoldWave to low pass filter with a roll off after 1800 Hz having a "steepness" of 2. This resulted in nearly sinusoidal shape to the signal with very little ringing, though the amplitude of the two tones was now different by nearly 50%.

      Loading the file back into ElfTools set to decode Super Elf Format without inversion was successful using low filtering after adjusting the timing as follows:

      One Min 7 Max 18
      Zero Min 19 Max 40

      The resulting BIN file was saved and viewed using HexEdit. This ElfTools regenerated BIN of the ElfTools generated WAV file was then compared against the original BIN file read from the Quest PROMs. Again, the BIN Files matched.

      This indicates that using ElfTools to produced sound files is a feasible means of distributing software for BOTH real 1802 based systems as well as emulators, so long as the formats of interest are supported by both ELF Tools and the emulators.

      NB. ElfTools has already been used to recover large files from poor quality cassette tape. During that project the ElfTools generated .WAV files were successfully read into a Quest Super ELF so I felt no need to revalidate that capability.

      Marcel has brought up another interesting question - what address has ElfTools placed into the leading 4 bytes of the file and can it be made configurable?

      73,
      Steve
    • ted_rossin
      Wow. Great stuff. I m not sure about which Elf systems use what formats for their cassette interface. I implemented one from popular electronics in the early
      Message 2 of 3 , Apr 7, 2010
      • 0 Attachment
        Wow. Great stuff.

        I'm not sure about which Elf systems use what formats for their cassette interface. I implemented one from popular electronics in the early 80s that I think is different from the quest machine but I'm not sure.

        I know I was most happy to get data from my tapes into binary format that can life on CD's, USB drives and the web. I'm not sure the best way to save the data is in a wave file as having the binary will let you convert to other usable forms with just a little bit of programming. I mostly prefer C or assembler source but binary at least can be disassembled if the run address is known.

        We do seem to have a major issue in our group in that we do not have a repository for code. We have the mash of random Files but no good directory and index which tells what platform the code runs on and how to use it and what it does. In a perfect world, we would have source and binary and maybe a wave file for the most popular platforms (PE Elf, ElfII, Elf2K).

        Sorry for the random thoughts.

        --- In cosmacelf@yahoogroups.com, "aa3nm" <steve@...> wrote:
        >
        > All,
        >
        > The question of the viability of using WAV and MP3 formats to preserve and even distribute 1802 software has come up several times in the past few years. My feeling is that this format is likely to be the most universal based on the wide variety of systems in use by the members.
        >
        > Richard Dienstknecht produced a very nice tool that has been overlooked on occasions for processing back and forth between .WAV and binary formats for both ELF II and Quest Super Elf formats.
        >
        > One drawback of Richard's ELF Tool is that it cannot re-process .WAV files it produces from .BIN files natively. I wanted to remove this limitation and along the way, quell any fears that this could become a one way street.
        >
        > I conducted an experiment in sound file processing using readily available tools and I present my results as follows:
        >
        >
        > After assembling latest version of Quest Tiny Basic using the Psudosam assembler (its just what I use) the resulting OBJ file was converted to binary using the DOS Hex2bin utility. The BIN file was then loaded into HexEdit and compared against the data file read from the original Quest Proms. The files matched.
        >
        > Using ElfTools, a WAV file for the Super ELF format was generated. Since ElfTools cannot process WAV files it has generated directly, some post processing was necessary to allow ElfTools to reprocess the file. The method I used was intended to emulate the effects of recording and playing back from cassette tape, thus placing the ElfTools generated "Perfect" digital sound file back into the analog sound file domain.
        >
        > I used GoldWave to load the ElfTools generated wave file. Zooming in to the mid data section, I could see that the file was wide band audio information showing nice square waveforms with essentially instantaneous transitions between states. First I reduced the volume by 1dB to prevent clipping. Then I configured GoldWave to low pass filter with a roll off after 1800 Hz having a "steepness" of 2. This resulted in nearly sinusoidal shape to the signal with very little ringing, though the amplitude of the two tones was now different by nearly 50%.
        >
        > Loading the file back into ElfTools set to decode Super Elf Format without inversion was successful using low filtering after adjusting the timing as follows:
        >
        > One Min 7 Max 18
        > Zero Min 19 Max 40
        >
        > The resulting BIN file was saved and viewed using HexEdit. This ElfTools regenerated BIN of the ElfTools generated WAV file was then compared against the original BIN file read from the Quest PROMs. Again, the BIN Files matched.
        >
        > This indicates that using ElfTools to produced sound files is a feasible means of distributing software for BOTH real 1802 based systems as well as emulators, so long as the formats of interest are supported by both ELF Tools and the emulators.
        >
        > NB. ElfTools has already been used to recover large files from poor quality cassette tape. During that project the ElfTools generated .WAV files were successfully read into a Quest Super ELF so I felt no need to revalidate that capability.
        >
        > Marcel has brought up another interesting question - what address has ElfTools placed into the leading 4 bytes of the file and can it be made configurable?
        >
        > 73,
        > Steve
        >
      • aa3nm
        Ted, I d have to agree with all your thoughts (random or not). I don t really think there is a single good answer for archiving and distributing code. What I
        Message 3 of 3 , Apr 7, 2010
        • 0 Attachment
          Ted,

          I'd have to agree with all your thoughts (random or not). I don't really think there is a single good answer for archiving and distributing code.

          What I do see is a series of splits in the users, each with a different set of needs and limitations. This, to me means there will be competing interests which has, in the past, proven to be the downfall to many efforts.

          Here are the divisions I see
          A) Emulator users
          (usually run on some PC, MAC, Linux/UNIX, or Palm platform)
          B) Hardware users
          (could be: Super Elf, VIP, ELF II, or Unique)

          I think we should attempt to archive code in a package format that can service all of those situations.

          To do that there must be a standardized digital format that can be loaded into any emulator or into any of the unique hardware platforms that use "modern storage media" (load via a printer port of via RAM stick, etc.). But this leaves the "original hardware" users (who do not interface with modern media) out in the cold unless we also archive a format they can ingest. Digital audio file formats address that situation.

          So - to my way of thinking - thinking should focus on having a package for code going into an archive. I'd suggest that each package should contain several files: source, listing, binary, hex and sound file along with a text file discussing the particulars of the code; assembler used, memory needs, I/O etc.

          It's a challenge trying to meet the needs of such a diverse set of users.

          73,
          Steve


          --- In cosmacelf@yahoogroups.com, "ted_rossin" <ted_rossin@...> wrote:
          >
          > Wow. Great stuff.
          >
          > I'm not sure about which Elf systems use what formats for their cassette interface. I implemented one from popular electronics in the early 80s that I think is different from the quest machine but I'm not sure.
          >
          > I know I was most happy to get data from my tapes into binary format that can life on CD's, USB drives and the web. I'm not sure the best way to save the data is in a wave file as having the binary will let you convert to other usable forms with just a little bit of programming. I mostly prefer C or assembler source but binary at least can be disassembled if the run address is known.
          >
          > We do seem to have a major issue in our group in that we do not have a repository for code. We have the mash of random Files but no good directory and index which tells what platform the code runs on and how to use it and what it does. In a perfect world, we would have source and binary and maybe a wave file for the most popular platforms (PE Elf, ElfII, Elf2K).
          >
          > Sorry for the random thoughts.
          >
          > --- In cosmacelf@yahoogroups.com, "aa3nm" <steve@> wrote:
          > >
          > > All,
          > >
          > > The question of the viability of using WAV and MP3 formats to preserve and even distribute 1802 software has come up several times in the past few years. My feeling is that this format is likely to be the most universal based on the wide variety of systems in use by the members.
          > >
          > > Richard Dienstknecht produced a very nice tool that has been overlooked on occasions for processing back and forth between .WAV and binary formats for both ELF II and Quest Super Elf formats.
          > >
          > > One drawback of Richard's ELF Tool is that it cannot re-process .WAV files it produces from .BIN files natively. I wanted to remove this limitation and along the way, quell any fears that this could become a one way street.
          > >
          > > I conducted an experiment in sound file processing using readily available tools and I present my results as follows:
          > >
          > >
          > > After assembling latest version of Quest Tiny Basic using the Psudosam assembler (its just what I use) the resulting OBJ file was converted to binary using the DOS Hex2bin utility. The BIN file was then loaded into HexEdit and compared against the data file read from the original Quest Proms. The files matched.
          > >
          > > Using ElfTools, a WAV file for the Super ELF format was generated. Since ElfTools cannot process WAV files it has generated directly, some post processing was necessary to allow ElfTools to reprocess the file. The method I used was intended to emulate the effects of recording and playing back from cassette tape, thus placing the ElfTools generated "Perfect" digital sound file back into the analog sound file domain.
          > >
          > > I used GoldWave to load the ElfTools generated wave file. Zooming in to the mid data section, I could see that the file was wide band audio information showing nice square waveforms with essentially instantaneous transitions between states. First I reduced the volume by 1dB to prevent clipping. Then I configured GoldWave to low pass filter with a roll off after 1800 Hz having a "steepness" of 2. This resulted in nearly sinusoidal shape to the signal with very little ringing, though the amplitude of the two tones was now different by nearly 50%.
          > >
          > > Loading the file back into ElfTools set to decode Super Elf Format without inversion was successful using low filtering after adjusting the timing as follows:
          > >
          > > One Min 7 Max 18
          > > Zero Min 19 Max 40
          > >
          > > The resulting BIN file was saved and viewed using HexEdit. This ElfTools regenerated BIN of the ElfTools generated WAV file was then compared against the original BIN file read from the Quest PROMs. Again, the BIN Files matched.
          > >
          > > This indicates that using ElfTools to produced sound files is a feasible means of distributing software for BOTH real 1802 based systems as well as emulators, so long as the formats of interest are supported by both ELF Tools and the emulators.
          > >
          > > NB. ElfTools has already been used to recover large files from poor quality cassette tape. During that project the ElfTools generated .WAV files were successfully read into a Quest Super ELF so I felt no need to revalidate that capability.
          > >
          > > Marcel has brought up another interesting question - what address has ElfTools placed into the leading 4 bytes of the file and can it be made configurable?
          > >
          > > 73,
          > > Steve
          > >
          >
        Your message has been successfully submitted and would be delivered to recipients shortly.