Electronics > Repair
Vintage chip Programmer : " Micropross ROM 3000U "
<< < (34/38) > >>
Vince:
Thanks, sounds cool, will try and play with 6502 disassemblers then...

m k:
Don't do what I did.
Chop the image to peaces we know are the "files" and continue from there.

Combine first section so that 0x1000-0x2fff first and 0x100-0xfff second.
Then load them to base address 0x9000.

One 6502 special,
text can be code and code can be text.

Other real mode special,
code can alter code.
Vince:
Yes... divide and conquer, sounds like  plan.... except I don't know how to chop a file nor stick bits together, but I guess in Linux this must be easy once you know how to do it... as always  :palm:

I guess I can use the 'dd' command to chop the file.. IF you can give it an offset... I don't know if dd can use offset or if it can only read a file from the its very beginning. I shall be investigating....



Vince:
Oh looks like dd can do it, I just looked at available parameters, below.

Looks like it's the tool for the job.

I can indeed specify an offset when reading the image file (using the "SKIP" parameter), but also specify an offset when writing (using the " SEEK" parameter)... which is to say I can concatenate two blocks of data together : I just need to tell dd to start writing the second block to the end of the first one, that's all I think...

You can specify the block size, so 4K in my case, then just specify a number of blocks rather than actual size... how convenient.
One can even use either decimal or "binary" notation, so either say 1kB (1,000 bytes) or 1K (1,024 bytes). You can even use K/M/G/T prefixes, how practical.  Hmmm... sounds good to me, long live dd ! :-+

Usage: dd [OPERAND]...
  or:  dd OPTION
Copy a file, converting and formatting according to the operands.

  bs=BYTES        read and write up to BYTES bytes at a time
  cbs=BYTES       convert BYTES bytes at a time
  conv=CONVS      convert the file as per the comma separated symbol list
  count=N         copy only N input blocks
  ibs=BYTES       read up to BYTES bytes at a time (default: 512)
  if=FILE         read from FILE instead of stdin
  iflag=FLAGS     read as per the comma separated symbol list
  obs=BYTES       write BYTES bytes at a time (default: 512)
  of=FILE         write to FILE instead of stdout
  oflag=FLAGS     write as per the comma separated symbol list
  seek=N          skip N obs-sized blocks at start of output
  skip=N          skip N ibs-sized blocks at start of input
  status=LEVEL    The LEVEL of information to print to stderr;
                  'none' suppresses everything but error messages,
                  'noxfer' suppresses the final transfer statistics,
                  'progress' shows periodic transfer statistics

N and BYTES may be followed by the following multiplicative suffixes:
c =1, w =2, b =512, kB =1000, K =1024, MB =1000*1000, M =1024*1024, xM =M
GB =1000*1000*1000, G =1024*1024*1024, and so on for T, P, E, Z, Y.
pcprogrammer:

--- Quote from: Vince on January 27, 2023, 09:11:56 pm ---Yes... divide and conquer, sounds like  plan.... except I don't know how to chop a file nor stick bits together, but I guess in Linux this must be easy once you know how to do it... as always  :palm:

I guess I can use the 'dd' command to chop the file.. IF you can give it an offset... I don't know if dd can use offset or if it can only read a file from the its very beginning. I shall be investigating....

--- End quote ---

On linux wxHexEditor is your friend  :)
Navigation
Message Index
Next page
Previous page
There was an error while thanking
Thanking...

Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod