TITLE "mp1test.a: main & test program" ; Author: Douglas W. Jones ; Date: Aug. 21, 2011 USE "hawk.h" USE "monitor.h" ; --- structure of linked list elements --- EXT HEAD ; list head NEXT = 0 ; pointer to next element TEXT = 4 ; pointer to associated text ; --- begin boilerplate for main program --- ARSIZE = 4 INT MAIN S MAIN MAIN: STORES R1,R2 ADDI R2,R2,ARSIZE ; --- begin application code --- LIL R8,HEAD ; p = HEAD LOOP: ; do { LOADCC R3,R8,TEXT ; s = p->text BZS NOTEXT ; if (s != NULL) { ADDI R2,R2,ARSIZE LIL R1,PUTS JSRS R1,R1 ; puts( s ) ADDI R2,R2,-ARSIZE NOTEXT: ; } LOADCC R8,R8,NEXT ; p = p->next BZR LOOP ; } while (p != NULL) ; --- end application code --- ADDI R2,R2,-ARSIZE LOADS R1,R2 JUMPS R1 END