nand2/07_Operating_System/04_Memory_Test/Readme.md
Michael Schröder 971b323822 added v2.0
2023-01-11 23:04:57 +01:00

1022 B

Memory.jack

This library provides two services: direct access to the computer's main memory (RAM), and allocation and recycling of memory blocks. The Hack RAM consists of 3840 words, each holding a 16-bit binary number.

Don't be afraid of the limited memory size of "only" 3840 words. Let the heap start at address 1024 with do Memory.init(1024,3839) in the Sys.init(). This will leave 768 words of stack, which is surely enough to run tetris.

addr segment
0-15 R0-R15 (SP,LCL,ARG,THIS,THAT)
16-255 static
256-1023 stack
1024-3839 heap
4096-4111 IO-devices

Project

  • Implement Memory.jack

  • Test in simulation:

    $ cd 04_Memory_Test
    $ make
    $ cd ../00_HACK
    $ apio clean
    $ apio sim
    
  • Check the content of special function register DEBUG0--DEBUG4.