alltst: proc options(main); /* assembly language interface to dynamic storage allocation module */ dcl totwds returns(fixed(15)), maxwds returns(fixed(15)), allwds entry(fixed(15)) returns(ptr); dcl allreq fixed(15), memptr ptr, meminx fixed(15), memory (0:0) bit(16) based(memptr); do while('1'b); put edit (totwds(),' Total Words Available', maxwds(),' Maximum Segment Size', 'Allocation Size? ') (2(skip,f(6),a),skip,a); get list(allreq); memptr = allwds(allreq); put edit('Allocated',allreq, ' Words at ',unspec(memptr)) (skip,a,f(6),a,b4); /* clear memory as example */ do meminx = 0 to allreq-1; memory(meminx) = '0000'b4; end; end; end alltst;