diff --git a/src/mudsys/fopen.36 b/src/mudsys/fopen.36 index da0bef55..8c7da90b 100644 --- a/src/mudsys/fopen.36 +++ b/src/mudsys/fopen.36 @@ -896,6 +896,8 @@ IFN ITS,[ ODSK: MOVE A,S.SNM(C) ; GET SNAME .SUSET [.SSNAM,,A] ; CLOBBER IT PUSHJ P,OPEN0 ; DO REAL LIVE OPEN + MOVEI 0,C.DISK + IORM 0,-2(B) ] IFE ITS,[ @@ -1759,6 +1761,8 @@ TTYLP2: MOVE C,T.SPDL+1(TB) ; POINT TO P BASE IORI A,20 ; THEN USE DISPLAY MODE HRLM A,S.DIR(C) ; STORE IN OPEN BLOCK PUSHJ P,OPEN2 ; OPEN THE TTY + MOVEI 0,C.TTY + IORM 0,-2(B) MOVE A,S.DEV(C) ; GET DEVICE NAME PUSHJ P,6TOCHS ; TO A STRING MOVE D,T.CHAN+1(TB) ; POINT TO CHANNEL @@ -4223,9 +4227,19 @@ IFE ITS,[ SUB TP,[2,,2] ] IFN ITS,[ - MOVE D,[440700,,A] - DOTCAL SIOT,[CHANNO(B),D,C] - .LOSE %LSFIL ;PRESUMABLY LOSSAGE MATTERS + JUMPE C,BFCDF2 ; NO CHARS LEFT TO WRITE? + PUSH P,[-5] ; KLUDGE ADDED TO FILL LAST WORD WITH ^C + ADDM C,(P) + MOVE C,A ; FOR FUNNY AOBJN PTR + HLL C,BUFSTR(B) ; POINT INTO WORD AFTER LAST CHAR + MOVEM 0,(A) + MOVEI 0,3 ; CONTROL C +BFCDF1: IDPB 0,C + AOSE (P) + JRST BFCDF1 + SUB P,[1,,1] + PUSHJ P,PGBIOO +BFCDF2: ] POP P,C JUMPN C,BFCLSD