Hi,
I am struck 
compileSubroutineCall since a while for the following problem:
Calling a method means pushing as a first argument a reference to the object on which we will operate.
What I don't understand is that the JackCompiler sometimes pushes 
this 0 and sometimes 
pointer 0.
I can't figure out why 

 and I am getting crazy!
Can you explain me this? Thanks!