📄 oppotriangle_0225.asl
字号:
05A7 24 881 ret
+ 882
+ 883 ;------------------------------------------------------
+ 884 ;Atan
+ 885 ;------------------------------------------------------
05A8 886 .ChoiceX:
05A8 20 00 00 887 call .Buf_trans_X ;2002 7/12
05AB F3 96 888 lda #Num1
05AD FD D8 889 sta .M_Data_Offset
05AF 20 04 F4 890 call .InpDataToT
05B2 20 00 00 891 call LineUp
05B5 F3 00 892 lda #OperandX
05B7 FD 00 893 sta Addr1
05B9 F3 00 894 lda #OperandY
05BB FD 00 895 sta Addr2
05BD F3 07 896 lda #.CmpLen ;2002.02.21 06
05BF FD 00 897 sta DpCount
05C1 20 00 00 898 call CompareData
05C4 20 00 00 899 call .Buf_trans_X ;2002 7/12
05C7 F1 00 900 lda Temp1
05C9 A7 02 901 cmpe #02h
05CB 06 06 FF 902 brz .Id4
+ 903
05CE F3 A0 904 lda #Num2 ;x<1.1875
05D0 FD D8 905 sta .M_Data_Offset
05D2 20 04 F4 906 call .InpDataToT
05D5 20 00 00 907 call LineUp
05D8 F3 00 908 lda #OperandX
05DA FD 00 909 sta Addr1
05DC F3 00 910 lda #OperandY
05DE FD 00 911 sta Addr2
05E0 F3 07 912 lda #.CmpLen ;06 2002.02.21
05E2 FD 00 913 sta DpCount
05E4 20 00 00 914 call CompareData
05E7 20 00 00 915 call .Buf_trans_X ;2002 7/12
05EA F1 00 916 lda Temp1
05EC A7 02 917 cmpe #02h
05EE 06 06 17 918 brz .Compare06875
+ 919
05F1 F3 B4 920 lda #Num4 ;x<2.4375
05F3 FD D8 921 sta .M_Data_Offset
05F5 20 04 F4 922 call .InpDataToT
05F8 20 00 00 923 call LineUp
05FB F3 00 924 lda #OperandX
05FD FD 00 925 sta Addr1
05FF F3 00 926 lda #OperandY
0601 FD 00 927 sta Addr2
0603 F3 07 928 lda #.CmpLen ;2002.02.21
0605 FD 00 929 sta DpCount
0607 20 00 00 930 call CompareData
060A 20 00 00 931 call .Buf_trans_X ;2002 7/12
060D F1 00 932 lda Temp1
060F A7 02 933 cmpe #02h
0611 06 06 A7 934 brz .Id2
0614 02 06 E4 935 br .Id3
0617 936 .Compare06875:
+ 937
0617 F3 AA 938 lda #Num3
0619 FD D8 939 sta .M_Data_Offset
061B 20 04 F4 940 call .InpDataToT
061E 20 00 00 941 call LineUp
0621 F3 00 942 lda #OperandX
0623 FD 00 943 sta Addr1
0625 F3 00 944 lda #OperandY
0627 FD 00 945 sta Addr2
0629 F3 07 946 lda #.CmpLen ;06 2002.02.21
062B FD 00 947 sta DpCount
062D 20 00 00 948 call CompareData
0630 20 00 00 949 call .Buf_trans_X ;2002 7/12
0633 F1 00 950 lda Temp1
0635 A7 02 951 cmpe #02h
0637 06 06 3D 952 brz .Id0
063A 02 06 77 953 br .Id1
063D 954 .Id0: ;((2*x)-1)/(2+x)
+ 955 ;call .Buf_trans_X
063D F3 C8 956 lda #Int2T
063F FD D8 957 sta .M_Data_Offset
0641 20 04 F4 958 call .InpDataToT
0644 20 00 00 959 call Multiplation
0647 F3 BE 960 lda #Int1T
0649 FD D8 961 sta .M_Data_Offset
064B 20 04 F4 962 call .InpDataToT
064E 20 00 00 963 call .Z_trans_X
0651 20 00 00 964 call Subtration
0654 20 00 00 965 call .Z_trans_B
0657 20 00 00 966 call .Buf_trans_X
065A F3 C8 967 lda #Int2T
065C FD D8 968 sta .M_Data_Offset
065E 20 04 F4 969 call .InpDataToT
0661 20 00 00 970 call Addition
0664 20 00 00 971 call .B_trans_X
0667 20 00 00 972 call .Z_trans_Y
066A 20 00 00 973 call Division
066D 20 00 00 974 call .Z_trans_Buf
0670 F3 00 975 lda #00h
0672 FD D9 976 sta .IdFlag
0674 02 07 06 977 br .EndChoiceX
0677 978 .Id1:
0677 F3 BE 979 lda #Int1T
0679 FD D8 980 sta .M_Data_Offset
067B 20 04 F4 981 call .InpDataToT
067E 20 00 00 982 call .Buf_trans_X
0681 20 00 00 983 call Subtration
0684 20 00 00 984 call .Z_trans_B
0687 20 00 00 985 call .Buf_trans_X
068A F3 BE 986 lda #Int1T
068C FD D8 987 sta .M_Data_Offset
068E 20 04 F4 988 call .InpDataToT
0691 20 00 00 989 call Addition
0694 20 00 00 990 call .B_trans_X
0697 20 00 00 991 call .Z_trans_Y
069A 20 00 00 992 call Division
069D 20 00 00 993 call .Z_trans_Buf
06A0 F3 01 994 lda #01h
06A2 FD D9 995 sta .IdFlag
06A4 02 07 06 996 br .EndChoiceX
06A7 997 .Id2:
06A7 F3 D2 998 lda #Int1p5
06A9 FD D8 999 sta .M_Data_Offset
06AB 20 04 F4 1000 call .InpDataToT
06AE 20 00 00 1001 call .Buf_trans_X
06B1 20 00 00 1002 call Subtration
06B4 20 00 00 1003 call .Z_trans_B
06B7 F3 D2 1004 lda #Int1p5
06B9 FD D8 1005 sta .M_Data_Offset
06BB 20 04 F4 1006 call .InpDataToT
06BE 20 00 00 1007 call .Buf_trans_X
06C1 20 00 00 1008 call Multiplation
06C4 F3 BE 1009 lda #Int1T
06C6 FD D8 1010 sta .M_Data_Offset
06C8 20 04 F4 1011 call .InpDataToT
06CB 20 00 00 1012 call .Z_trans_X
06CE 20 00 00 1013 call Addition
06D1 20 00 00 1014 call .B_trans_X
06D4 20 00 00 1015 call .Z_trans_Y
06D7 20 00 00 1016 call Division
06DA 20 00 00 1017 call .Z_trans_Buf
06DD F3 02 1018 lda #02h
06DF FD D9 1019 sta .IdFlag
06E1 02 07 06 1020 br .EndChoiceX
06E4 1021 .Id3:
06E4 F3 96 1022 lda #Int1
06E6 FD D8 1023 sta .M_Data_Offset
06E8 20 04 7E 1024 call .InpData
06EB 20 00 00 1025 call .Buf_trans_Y
06EE 20 00 00 1026 call Division
06F1 F3 01 1027 lda #01h
06F3 FD 00 1028 sta SignZ
06F5 20 00 00 1029 call .Z_trans_Buf
06F8 F3 03 1030 lda #03h
06FA FD D9 1031 sta .IdFlag
06FC 02 07 06 1032 br .EndChoiceX
06FF 1033 .Id4:
06FF F3 04 1034 lda #04h
0701 FD D9 1035 sta .IdFlag
0703 20 00 00 1036 call .X_trans_Buf
0706 1037 .EndChoiceX:
0706 24 1038 ret
+ 1039 ;-----------------------------------------------------
0707 1040 .DoZ3:
0707 20 00 00 1041 call .Buf_trans_X
070A 20 00 00 1042 call .X_Squ
070D 20 00 00 1043 call Multiplation
0710 20 00 00 1044 call .Z_trans_B ;Z-->B
0713 24 1045 ret
+ 1046 ;-----------------------------------------------------
0714 1047 .DoW3:
0714 20 00 00 1048 call .B_trans_X
0717 20 00 00 1049 call .X_Squ
071A 20 00 00 1050 call Multiplation
071D 20 00 00 1051 call .Z_trans_S ;W-->S
0720 24 1052 ret
+ 1053
+ 1054 ;------------------------------------------------------
0721 1055 .DoS1:
0721 F3 8C 1056 lda #At10
0723 FD D8 1057 sta .M_Data_Offset ;At10*W
0725 20 04 F4 1058 call .InpDataToT
0728 20 00 00 1059 call .S_trans_X
072B 20 00 00 1060 call Multiplation
+ 1061
072E F3 78 1062 lda #At8 ;At8+Z
0730 FD D8 1063 sta .M_Data_Offset
0732 20 04 F4 1064 call .InpDataToT
0735 20 00 00 1065 call .Z_trans_X
0738 20 00 00 1066 call Addition
+ 1067
073B 20 00 00 1068 call .S_trans_X ;Z*W
073E 20 00 00 1069 call .Z_trans_Y
0741 20 00 00 1070 call Multiplation
+ 1071
0744 F3 64 1072 lda #At6 ;At6+Z
0746 FD D8 1073 sta .M_Data_Offset
0748 20 04 F4 1074 call .InpDataToT
074B 20 00 00 1075 call .Z_trans_X
074E 20 00 00 1076 call Addition
+ 1077
0751 20 00 00 1078 call .S_trans_X ;Z*W
0754 20 00 00 1079 call .Z_trans_Y
0757 20 00 00 1080 call Multiplation
+ 1081
+ 1082
075A F3 50 1083 lda #At4 ;At4+Z
075C FD D8 1084 sta .M_Data_Offset
075E 20 04 F4 1085 call .InpDataToT
0761 20 00 00 1086 call .Z_trans_X
0764 20 00 00 1087 call Addition
+ 1088
0767 20 00 00 1089 call .S_trans_X ;Z*W
076A 20 00 00 1090 call .Z_trans_Y
076D 20 00 00 1091 call Multiplation
+ 1092
0770 F3 3C 1093 lda #At2 ;At2+Z
0772 FD D8 1094 sta .M_Data_Offset
0774 20 04 F4 1095 call .InpDataToT
0777 20 00 00 1096 call .Z_trans_X
077A 20 00 00 1097 call Addition
+ 1098
077D 20 00 00 1099 call .S_trans_X ;Z*W
0780 20 00 00 1100 call .Z_trans_Y
0783 20 00 00 1101 call Multiplation
+ 1102
0786 F3 28 1103 lda #At0 ;At2+Z
0788 FD D8 1104 sta .M_Data_Offset
078A 20 04 F4 1105 call .InpDataToT
078D 20 00 00 1106 call .Z_trans_X
0790 20 00 00 1107 call Addition
+ 1108
0793 20 00 00 1109 call .B_trans_X
0796 20 00 00 1110 call .Z_trans_Y
0799 20 00 00 1111 call Multiplation
079C 20 00 00 1112 call .Z_trans_B ;S1->B
079F 24 1113 ret
+ 1114 ;------------------------------------------------------
07A0 1115 .DoS2:
07A0 F3 82 1116 lda #At9
07A2 FD D8 1117 sta .M_Data_Offset ;At9*W
07A4 20 04 F4 1118 call .InpDataToT
07A7 20 00 00 1119 call .S_trans_X
07AA 20 00 00 1120 call Multiplation
+ 1121
07AD F3 6E 1122 lda #At7 ;At7+Z
07AF FD D8 1123 sta .M_Data_Offset
07B1 20 04 F4 1124 call .InpDataToT
07B4 20 00 00 1125 call .Z_trans_X
07B7 20 00 00 1126 call Addition
+ 1127
07BA 20 00 00 1128 call .S_trans_X ;Z*W
07BD 20 00 00 1129 call .Z_trans_Y
07C0 20 00 00 1130 call Multiplation
+ 1131
07C3 F3 5A 1132 lda #At5 ;At5+Z
07C5 FD D8 1133 sta .M_Data_Offset
07C7 20 04 F4 1134 call .InpDataToT
07CA 20 00 00 1135 call .Z_trans_X
07CD 20 00 00 1136 call Addition
+ 1137
07D0 20 00 00 1138 call .S_trans_X ;Z*W
07D3 20 00 00 1139 call .Z_trans_Y
07D6 20 00 00 1140 call Multiplation
+ 1141
+ 1142
07D9 F3 46 1143 lda #At3 ;At3+Z
07DB FD D8 1144 sta .M_Data_Offset
07DD 20 04 F4 1145 call .InpDataToT
07E0 20 00 00 1146 call .Z_trans_X
07E3 20 00 00 1147 call Addition
+ 1148
07E6 20 00 00 1149 call .S_trans_X ;Z*W
07E9 20 00 00 1150 call .Z_trans_Y
07EC 20 00 00 1151 call Multiplation
+ 1152
07EF F3 32 1153 lda #At1 ;At1+Z
07F1 FD D8 1154 sta .M_Data_Offset
07F3 20 04 F4 1155 call .InpDataToT
07F6 20 00 00 1156 call .Z_trans_X
07F9 20 00 00 1157 call Addition
+ 1158
07FC 20 00 00 1159 call .S_trans_X ;Z*W
07FF 20 00 00 1160 call .Z_trans_Y
0802 20 00 00 1161 call Multiplation
0805 24 1162 ret
+ 1163 ;------------------------------------------------------
0806 1164 .DoW4:
0806 20 00 00 1165 call .B_trans_X
0809 20 00 00 1166 call .Z_trans_Y
080C 20 00 00 1167 call Addition
080F 20 00 00 1168 call .Buf_trans_X
0812 20 00 00 1169 call .Z_trans_Y
0815 20 00 00 1170 call Multiplation
0818 20 00 00 1171 call .Buf_trans_X
081B 20 00 00 1172 call .Z_trans_Y
081E 20 00 00 1173 call Subtration
0821 24 1174 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -