색인 레지스터 - S

스택의 위치를 표시한다.
- page 1 범위
- 스택 포인터
스택에 Push/Pop 하면 알아서 s 레지스터의 값이 바뀐다.
- 시작 지점이
0xFFpush 할 때 마다 값이 1씩 줄어듬 - pull 할 때 마다 값이 증가함



S 레지스터의 초기값

초기값을 강제하지 않기 때문에 모른다.
- unspecified
스택 사용량이 256바이트를 넘으면 링버퍼에서 한 바퀴 돌고 기존의 기록을 덮어쓸 수 있어서 문제다.
ldx #$FF
txsx 레지스터에 $FF를 로드하고, x 레지스터의 값을 s 레지스터로 전송한다. >> 이게 베스트 프랙티스
Page 0, Page 1 합치기

최소 메모리 요구사항이 “Page 0”, “Page 1”해서 512 바이트
이 둘을 합쳐서 극한으로 최소 메모리 요구사항을 256 바이트로 줄일 수 있다.
방향으로 구분하는 방식이네요..
“둘이 오버랩 되지 않는다” >> 페이지 0과 페이지 1이 겹치지 않는다는 것, 덮어쓰지 않아야 한다.