FibonacciElement.cmp is OK. Quoting from the book (end of 8.3.1)
... the computer's bootstrap code should effect the following operations (in machine language):
SP=256 // Initialiaze the stack pointer to 0x0100
call Sys.init // Start executing (the translated code of) Sys.init
That's a
VM call, not just a jump.
When Sys.init() starts runing, there is a full stack frame on the stack. This stack frame is why the final SP is 5 greater than you are expecting.
--Mark