diff --git a/src/imsrc/free.way b/src/imsrc/free.way index 7ffdd76c..60780052 100644 --- a/src/imsrc/free.way +++ b/src/imsrc/free.way @@ -1,5 +1,6 @@ TITLE FREEWAY CROSSING PROGRAM IFNDEF BEGIN, BEGIN=10000 +IFNDEF ALPHA, ALPHA=0 .INSRT IMLAC;IMDEFS .ADDR.=1 LOC BEGIN @@ -88,6 +89,7 @@ RRRR: 0 ;SUBROUTINE FOR RANDOM VELOCITIES I JMP RRRR ;RETURN CONVERT: 0 ;CONVERT TO DLXA SAR 1 +IFN ALPHA,[ DAC TMP' LAW 11 DAC .+3 @@ -99,6 +101,8 @@ CONVERT: 0 ;CONVERT TO DLXA SAL 2 ;GET MSB PORTION ADD .-3 ;ADD LSB PORTION ADD [11400] ;MAKE DLXA +] +.ELSE ADD [10230] I JMP CONVERT ;RETURN SUBJECT: 0 ;GET POSITION FOR SUBJECT LAC SUBPOS' @@ -106,7 +110,8 @@ SUBJECT: 0 ;GET POSITION FOR SUBJECT DAC SUBPOS' ;GET NEW POSITION SAL 1 JMS CONVERT - ADD [11500] ;MAKE DLYA +IFN ALPHA,ADD [11500] ;MAKE DLYA +.ELSE ADD [10352] DAC CAR0 ;STORE IN DISPLAY I JMP SUBJECT ;RETURN RVEL: 40 ;STORAGE FOR RANDOM VELOCITIES @@ -442,7 +447,9 @@ START: 0 ;INITIALIZATION ROUTINE JMS WRITE LAW 12 ;LF JMS WRITE -START2: LAC [DLYA 3100] +START2: +IFN ALPHA,LAC [DLYA 3100] +.ELSE LAC [DLYA 602] DAC CAR0 ;INITIALIZE SUBJEXT CLA DAC SUBPOS' @@ -461,7 +468,8 @@ START2: LAC [DLYA 3100] JMP LOOP1 ;RETURN ENDD: 0 ;DID THE SUBJECT MAKE IT? LAC CAR0 - SUB [DLYA 4700] +IFN ALPHA,SUB [DLYA 4700] +.ELSE SUB [DLYA 1176] ASP I JMP ENDD ;RETURN IF HE DIDN'T CLA @@ -831,6 +839,7 @@ LRD1: INC E,B30 INC B30,B30 INC B30,B30 INC B30,B30 +IFN ALPHA,[ INC D00,131 DIXM DIXM @@ -840,9 +849,19 @@ LRD1: INC E,B30 LLD2: DDXM DDXM INC E,D30 +] +.ELSE [ + INC D30,D30 + INC D30,D30 + INC D30,X +LLD2: INC E,DM30 + INC DM30,DM30 + INC DM30,DM30 +] INC BM30,BM30 INC BM30,BM30 INC BM30,BM30 +IFN ALPHA,[ INC BM30,N DDXM DDXM @@ -850,28 +869,48 @@ LLD2: DDXM LRD3: DIXM DIXM INC E,DM30 +] +.ELSE [ + INC BM30,X +LRD3: INC E,D30 + INC D30,D30 + INC D30,D30 +] INC B30,B30 INC B30,B30 INC B30,B30 +IFN ALPHA,[ INC B30,131 DIXM DRJM +] +.ELSE B30,X LLD4: INC E,BM30 INC BM30,BM30 INC BM30,BM30 INC BM30,BM30 +IFN ALPHA,[ INC D00,N DDXM DDXM DDXM DDXM DRJM +] +.ELSE [ + INC DM30,DM30 + INC DM30,DM30 + INC DM30,X +] LR5: INC E,B30 INC B30,B30 INC B30,B30 +IFN ALPHA,[ INC B30,131 DIXM DRJM +] +.ELSE INC B30,X CAR: INC E,DM33 ;WORD CAR INC DM10,BM30 INC BM20,B0M3 @@ -911,9 +950,12 @@ CAR: INC E,DM33 ;WORD CAR UP: INC E,B03 ;LINE GOING UP INC B03,B03 INC B03,B03 +IFN ALPHA,[ INC B03,113 DIYM DRJM +] +.ELSE INC B03,X B3: INC E,D10 ;ONE INC B20,B20 INC DM20,B03 @@ -1001,10 +1043,16 @@ CRUNCH: INC E,D22 ;CRUNCH DRAWING ROUTINE INC B3M2,B3M2 INC B23,B23 INC D00,N +IFN ALPHA,[ DIXM DIXM DIXM DIXM +] +.ELSE [ + DLXA 1022 + DLYA 340 +] INC E,D30 INC D30,D30 INC D30,D30 @@ -1162,8 +1210,14 @@ REST: DNOP ;DISPLAY WAIT ROUTINE DIS: DHVC ;START OF DISPLAY DADR DSTS 1 +IFN ALPHA,[ DLXA 1400 ;DRAW HIGHWAY DLYA 4600 +] +.ELSE [ + DLXA 230 + DLYA 1154 +] DNOP DNOP DNOP @@ -1189,10 +1243,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LR5 DJMS LR5 DJMS LR5 +IFN ALPHA,[ DIXM DIXM DIXM DIXM +] +.ELSE DLXA 1022 DJMS LR5 DJMS LR5 DJMS LR5 @@ -1212,10 +1269,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LR5 DJMS LR5 DJMS LR5 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 1110 DJMS LLD4 DJMS LLD4 DJMS LLD4 @@ -1237,10 +1297,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LLD2 DJMS LLD2 DJMS LLD2 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 1044 DJMS LRD1 DJMS LRD1 DJMS LRD1 @@ -1261,10 +1324,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LRD3 DJMS LRD3 DJMS LRD3 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 1000 DJMS LLD4 DJMS LLD4 DJMS LLD4 @@ -1286,10 +1352,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LLD2 DJMS LLD2 DJMS LLD2 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 734 DJMS LRD1 DJMS LRD1 DJMS LRD1 @@ -1310,10 +1379,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LRD3 DJMS LRD3 DJMS LRD3 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 670 DJMS LLD4 DJMS LLD4 @@ -1335,10 +1407,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LLD2 DJMS LLD2 DJMS LLD2 +IFN ALPHA,[ DDYM DDYM DDYM DDYM +] +.ELSE DLYA 624 DJMS LR5 DJMS LR5 DJMS LR5 @@ -1358,10 +1433,13 @@ DIS: DHVC ;START OF DISPLAY DJMS LR5 DJMS LR5 DJMS LR5 +IFN ALPHA,[ DIXM DIXM DIXM DIXM +] +.ELSE DLXA 1022 DJMS LR5 DJMS LR5 @@ -1382,8 +1460,14 @@ DIS: DHVC ;START OF DISPLAY DJMS LR5 DJMS LR5 DJMS LR5 +IFN ALPHA,[ DLXA 4000 DLYA 3100 +] +.ELSE [ + DLXA 745 + DLYA 1440 +] DJMS REST DJMS UP DJMS UP @@ -1409,7 +1493,8 @@ SCORE: DNOP DJMS LETTER+61 ;R DJMS LETTER+21 ;E DJMS LETTER+115 ;: - DLXA 3640 +IFN ALPHA,DLXA 3640 +.ELSE DLXA 745 DDYM DDYM @@ -1420,10 +1505,17 @@ NUM1: DIXM DIXM DIXM DJMS LETTER+45 - DLXA 4000 +IFN ALPHA,DLXA 4000 +.ELSE DLXA 1000 SET: DNOP +IFN ALPHA,[ DLXA 3400 DLYA 2000 +] +.ELSE [ + DLXA 670 + DLYA 340 +] DJMS REST DJMS LETTER+70 ;S DJMS LETTER+21 ;E @@ -1438,10 +1530,17 @@ SET: DNOP DJMS LETTER+21 ;E DJMS LETTER+21 ;E DJMS LETTER+13 ;D - DLXA 4000 +IFN ALPHA,DLXA 4000 +.ELSE DLXA 1000 FIRE: DNOP +IFN ALPHA,[ DLXA 3400 DLYA 2000 +] +.ELSE [ + DLXA 670 + DLYA 340 +] DJMS REST DJMS LETTER+70 ;S DJMS LETTER+76 ;T @@ -1459,45 +1558,105 @@ FIRE: DNOP DJMS LETTER ;A DJMS LETTER+13 ;D DJMS LETTER+111 ;Y +IFN ALPHA,[ DLXA 4000 CAR0: DLYA 3100 +] +.ELSE [ + DLXA 1000 +CAR0: DLYA 602 +] DJMS REST DJMS CAR +IFN ALPHA,[ DLXA 4000 DLYA 2700 +] +.ELSE [ + DLXA 1000 + DLYA 536 +] DJMS REST DIGIT: DJMS B3 +IFN ALPHA,[ CAR1: DLXA 1400 DLYA 3300 +] +.ELSE [ +CAR1: DLXA 230 + DLYA 646 +] DJMS REST DJMS CAR +IFN ALPHA,[ CAR2: DLXA 1400 DLYA 3500 +] +.ELSE [ +CAR2: DLXA 230 + DLYA 712 +] DJMS REST DJMS CAR +IFN ALPHA,[ CAR3: DLXA 1400 DLYA 3700 +] +.ELSE [ +CAR3: DLXA 230 + DLYA 756 +] DJMS REST DJMS CAR +IFN ALPHA,[ CAR4: DLXA 1400 DLYA 4100 +] +.ELSE [ +CAR4: DLXA 230 + DLYA 1022 +] DJMS REST DJMS CAR +IFN ALPHA,[ CAR5: DLXA 1400 DLYA 4300 +] +.ELSE [ +CAR5: DLXA 230 + DLYA 1066 +] DJMS REST DJMS CAR +IFN ALPHA,[ CAR6: DLXA 1400 DLYA 4500 +] +.ELSE [ +CAR6: DLXA 230 + DLYA 1132 +] DJMS REST DJMS CAR +IFN ALPHA,[ DLXA 3700 DLYA 2000 +] +.ELSE [ + DLXA 756 + DLYA 340 +] DJMS REST CRUNC0: DNOP +IFN ALPHA,[ DLXA 4000 ;CENTER BEAM AND WAIT DLYA 4000 +] +.ELSE [ + DLXA 1000 + DLYA 1000 +] DHLT L: ..ZZ=. ;LITERALS GO HERE LOC &77000