I want to program a RAM chip inside Proteus simulator, but with an EXTERNAL FILE.
- How can I do that? I never did it, and is the first time for me. Please, much advise required.
I actually did start this research already but I stopped on the contents of the file. I also find fragments of how to program it on youtube.
1 - *.hex file using my notepad and a hex editor named HxD.exe (that is new to me). But I got a ton of errors from Proteus, until I loaded a PIC .hex file and it worked with not errors. The trick that I figure out, was to add :00000001FF inside a new blank *.hex file and I could loaded it with no errors. But after this breakthrough, I have no idea how to make each line of data at which address. And Proteus does not show me the RAM data inside if I am MANUALLY program it.
2 - *.bin file using only notepad. Inside RAM chip Edit properties, a special parameter must be inserted [0.bin,ASCHEX]
(where 0.bin is the name of my file and ,ASCHEX is the parameter.) My best educated guess, this parameter is actually a conversion from bin to hex.

And like previous try, the content of the files and how to write correctly, failed.
Inside Proteus I got very random pins ON while changing the address manually. And not as expected from the code inside the file.
So far, I figured out how to MANUALLY program a RAM in Proteus simulator, thanks to youtube and a couple of google searches.
Memory #1
This 6116 was the easiest

Memory #2
This one was a bit tricky, and I had to look more careful into it's datasheet. And I managed to make it work.

Memory #3
This was a fail in implementation but I understood what it needs to make it work. It is by far the strangest RAM I ever encountered for manual programming. This simulation didnt work because that Monostable Multivibrator pulse circuit didnt want to work at all, probably some program bug or a mistake I made but im blind to see it; so I probably have to make a 555 circuit for it. Im showing it anyway because I made a part of it.

Thank you !
- How can I do that? I never did it, and is the first time for me. Please, much advise required.
I actually did start this research already but I stopped on the contents of the file. I also find fragments of how to program it on youtube.
1 - *.hex file using my notepad and a hex editor named HxD.exe (that is new to me). But I got a ton of errors from Proteus, until I loaded a PIC .hex file and it worked with not errors. The trick that I figure out, was to add :00000001FF inside a new blank *.hex file and I could loaded it with no errors. But after this breakthrough, I have no idea how to make each line of data at which address. And Proteus does not show me the RAM data inside if I am MANUALLY program it.
2 - *.bin file using only notepad. Inside RAM chip Edit properties, a special parameter must be inserted [0.bin,ASCHEX]
(where 0.bin is the name of my file and ,ASCHEX is the parameter.) My best educated guess, this parameter is actually a conversion from bin to hex.

And like previous try, the content of the files and how to write correctly, failed.
Inside Proteus I got very random pins ON while changing the address manually. And not as expected from the code inside the file.
So far, I figured out how to MANUALLY program a RAM in Proteus simulator, thanks to youtube and a couple of google searches.
Memory #1
This 6116 was the easiest

Memory #2
This one was a bit tricky, and I had to look more careful into it's datasheet. And I managed to make it work.

Memory #3
This was a fail in implementation but I understood what it needs to make it work. It is by far the strangest RAM I ever encountered for manual programming. This simulation didnt work because that Monostable Multivibrator pulse circuit didnt want to work at all, probably some program bug or a mistake I made but im blind to see it; so I probably have to make a 555 circuit for it. Im showing it anyway because I made a part of it.


Thank you !
Last edited: