- cvtwl (r10)+,r1 #r1 has lower bound
- cvtwl (r10)+,r2 #r2 has upper bound
- cvtwl (sp)+,r3 #r3 contains subscript
- subl2 r1,r3 #r3 has base subscript
- index r3,$0,r2,r0,$0,r1 #r1 has calculated offset
- addl2 r1,(sp) #calculate actual address
+ clrl r3 #r3 has base subscript
+ subw3 (r10)+,(sp)+,r3
+ blss esubscr #check lower bound
+ cmpw r3,(r10)+ #check upper bound
+ bgtru esubscr
+ mull2 r0,r3 #calc byte offset
+ addl2 r3,(sp) #calculate actual address