In reply to Mittal Maru:
Just trying to understand your question.
You have 64k memory (locations 0-65535)
Out of which 1k is data (0-1023?1024?)
Then there is 8 bytes of other registers, which results in total 1031 bytes of storage used out of 64k, is that correct?
Typically the address map file is a bunch of defines or parameters which has hardcoded locations of various registers. The input addr is compared against these values and the appropriate location is written to/read.
You might be able to find examples online.