<div dir="ltr">just counting number of extB bytes should do it...<br><br>    extB := (extB = 0 and: [byte > 127])<br>                ifTrue: [byte - 256]<br>                ifFalse: [(extB bitShift: 8) + byte]<br><div><div class="gmail_extra"><br></div><div class="gmail_extra">becomes<br><br>    extB := (numExtB = 0 and: [byte > 127])<br>                ifTrue: [byte - 256]<br>                ifFalse: [(extB bitShift: 8) + byte].<br>    numExtB := numExtB + 1<br><br></div><div class="gmail_extra">then reset numExtB := 0 where we reset extB := 0...<br><br></div><div class="gmail_extra"><div class="gmail_quote">2016-11-04 17:42 GMT+01:00 Eliot Miranda <span dir="ltr"><<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <br><div dir="auto"><div>Hi Ronie,</div><div id="gmail-m_-5204603728552232515AppleMailSignature"><br></div><div id="gmail-m_-5204603728552232515AppleMailSignature">    then I'll take a look at fixing the 00000000 1xxxxxxx ... case.  The nice thing is that it's all localized to the extBBytecode.  Excuse my confusion earlier in the week.<br><br><span style="background-color:rgba(255,255,255,0)">_,,,^..^,,,_ (phone)</span></div><div><br>On Nov 4, 2016, at 12:53 AM, Ronie Salgado <<a href="mailto:roniesalg@gmail.com" target="_blank">roniesalg@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div class="gmail_extra">Hi Eliot,<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">   in the below you, Roni, added 
extBFirstZero.  As far as I can tell this breaks the newspeak (and 
Cadence (*)) VM.  I don't quite see the purpose of extBFirstZero and 
urgently need to restore the Newspeak and Cadence VMs.  So forgive me 
but I'm going to revert that part of the changes.  It has caused me to 
misdiagnose the problems with extPushInteger and 
genExtUnconditionalJump.  These I'll revert too.  If this breaks Lowcode
 then let's collaborate on developing a fix for Lowcode that doesn't 
break Newspeak and Cadence VMs.  But it's a priority of mine (they pay 
for my work) to keep these VMs working.<div class="gmail_extra"><br></div></blockquote><div>This was a quick hack that I added to be able to encode unsigned values such as 0x00FF . Since ExtB is signed, the sequence ExtB 00 ExtB FF ends decoded as -1 (0xFFFFFFFF) instead of 255, which is the correct value, and it is used by some Lowcode instructions such as pointer offsetting.<br><br></div><div>I am still trying to figure out how to move into the opensmalltalk-vm branch. I have been using the pharo-vm branch mostly because the scripts for making a Squeak bases VM Maker image are not working on my Linux boxes.<br><br></div><div>Best regards,<br></div><div>Ronie<br></div></div><div class="gmail_extra"><br></div></div>
</div></blockquote></div><br></blockquote></div><br></div></div></div>