⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 show.s

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 S
📖 第 1 页 / 共 2 页
字号:
	lda 1,x
	sta *__r1
	lda ,x
	tsx
	sta *__r0
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #10
	psha
	clra
	psha
	jsr __divmod16u
	pula
	sta *__r0
	pula
	add #48
	sta *__r1
	lda *__r0
	adc #0
	lda 8,X
	add #3
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 119
;      ReP[2]=((*IntDataP)/10)%10+'0';
	lda ,X
	ldx 1,X
	psha
	pulh
	lda 1,x
	sta *__r1
	lda ,x
	tsx
	sta *__r0
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #10
	psha
	clra
	psha
	jsr __divmod16u
	ais #2
	mov *__rhi,*__r0
	mov *__rlo,*__r1
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #10
	psha
	clra
	psha
	jsr __divmod16u
	pula
	sta *__r0
	pula
	add #48
	sta *__r1
	lda *__r0
	adc #0
	lda 8,X
	add #2
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 120
;      ReP[1]=((*IntDataP)/100)%10+'0';
	lda ,X
	ldx 1,X
	psha
	pulh
	lda 1,x
	sta *__r1
	lda ,x
	tsx
	sta *__r0
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #100
	psha
	clra
	psha
	jsr __divmod16u
	ais #2
	mov *__rhi,*__r0
	mov *__rlo,*__r1
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #10
	psha
	clra
	psha
	jsr __divmod16u
	pula
	sta *__r0
	pula
	add #48
	sta *__r1
	lda *__r0
	adc #0
	lda 8,X
	add #1
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 121
;      ReP[0]=(*IntDataP)/1000+'0';
	lda ,X
	ldx 1,X
	psha
	pulh
	lda 1,x
	sta *__r1
	lda ,x
	tsx
	sta *__r0
	mov *__r1,*__rlo
	mov *__r0,*__rhi
	lda #-24
	psha
	lda #3
	psha
	jsr __divmod16u
	ais #2
	mov *__rhi,*__r0
	mov *__rlo,*__r1
	lda *__r1
	add #48
	sta *__r1
	lda *__r0
	adc #0
	lda 8,X
	sta *__r3
	lda 7,X
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 124
;      
;      //2:插入小数点
;      if(Data[2]==1)         //有一位小数
	lda 10,X
	add #2
	sta *__r1
	lda 9,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	cmp #1
	bne L14
	.dbline 125
;      {ReP[4]=ReP[3];ReP[3]='.';}
	.dbline 125
	lda 8,X
	add #3
	sta *__r1
	lda 7,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	sta *__r1
	lda 8,X
	add #4
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 125
	lda 8,X
	add #3
	sta *__r1
	lda 7,X
	adc #0
	sta *__r0
	lda #46
	ldhx *__r0
	sta ,x
	tsx
	.dbline 125
	jmp L15
L14:
	.dbline 126
;      else if(Data[2]==2)    //有两位小数
	lda 10,X
	add #2
	sta *__r1
	lda 9,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	cmp #2
	bne L16
	.dbline 127
;      {ReP[4]=ReP[3];ReP[3]=ReP[2];ReP[2]='.';}
	.dbline 127
	lda 8,X
	add #3
	sta *__r1
	lda 7,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	sta *__r1
	lda 8,X
	add #4
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 127
	lda 8,X
	add #2
	sta *__r1
	lda 7,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	sta *__r1
	lda 8,X
	add #3
	sta *__r3
	lda 7,X
	adc #0
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 127
	lda 8,X
	add #2
	sta *__r1
	lda 7,X
	adc #0
	sta *__r0
	lda #46
	ldhx *__r0
	sta ,x
	tsx
	.dbline 127
	bra L17
L16:
	.dbline 128
;      else if(Data[2]==0)    //没有小数
	lda 10,X
	add #2
	sta *__r1
	lda 9,X
	adc #0
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	tsta
	bne L18
	.dbline 129
;      {
	.dbline 130
;       for(i=4;i>0;i--)      //调整整数显示位置
	lda #4
	sta 4,X
	bra L23
L20:
	.dbline 131
	clr *__r0
	lda 4,X
	sub #1
	sta *__r1
	lda *__r0
	sbc #0
	sta *__r0
	lda *__r1
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	sta *__r1
	clr *__r2
	lda 4,X
	add 8,X
	sta *__r3
	lda *__r2
	adc 7,X
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
L21:
	.dbline 130
	dec 4,X
L23:
	.dbline 130
	lda 4,X
	cmp #0
	bhi L20
	.dbline 132
;         ReP[i]=ReP[i-1];    //在最前面补零
;       ReP[0]='0';
	lda 8,X
	sta *__r1
	lda 7,X
	sta *__r0
	lda #48
	ldhx *__r0
	sta ,x
	tsx
	.dbline 133
;      }
L18:
L17:
L15:
	.dbline 136
;      
;      //3:调整前导的0为空格
;      if(ReP[0]=='0')       
	lda 7,X
	ldx 8,X
	psha
	pulh
	lda ,x
	tsx
	cmp #48
	bne L24
	.dbline 137
;           ReP[0]=0x20;        
	lda 8,X
	sta *__r1
	lda 7,X
	sta *__r0
	lda #32
	ldhx *__r0
	sta ,x
	tsx
L24:
	.dbline 138
;      for(i=1;i<4;i++)
	lda #1
	sta 4,X
	bra L29
L26:
	.dbline 139
;      {if((ReP[i-1]==0x20)&&(ReP[i]=='0')&&(ReP[i+1]!='.'))
	.dbline 139
	clr *__r0
	lda 4,X
	sub #1
	sta *__r1
	lda *__r0
	sbc #0
	sta *__r0
	lda *__r1
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	cmp #32
	bne L30
	clr *__r0
	lda 4,X
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	cmp #48
	bne L30
	ldhx *__r0
	aix #1
	lda ,x
	tsx
	cmp #46
	beq L30
	.dbline 140
	clr *__r0
	lda 4,X
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	lda #32
	ldhx *__r0
	sta ,x
	tsx
L30:
	.dbline 140
L27:
	.dbline 138
	inc 4,X
L29:
	.dbline 138
	lda 4,X
	cmp #4
	blo L26
	.dbline 143
;            ReP[i]=0x20;}
;      
;      //4:调整显示的位置,把空格一起移到最后
;      for(i=1;i<4;i++)
	lda #1
	sta 4,X
	bra L35
L32:
	.dbline 144
;       if(ReP[i]!=0x20) break;
	clr *__r0
	lda 4,X
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	cmp #32
	beq L36
	.dbline 144
	bra L34
L36:
L33:
	.dbline 143
	inc 4,X
L35:
	.dbline 143
	lda 4,X
	cmp #4
	blo L32
L34:
	.dbline 145
;      for(k=1,j=i;j<=4;j++,k++)
	lda #1
	sta 2,X
	lda 4,X
	sta 3,X
	bra L41
L38:
	.dbline 146
;      { 
	.dbline 147
;       ReP[k]=ReP[j];
	clr *__r0
	lda 3,X
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	ldhx *__r0
	lda ,x
	tsx
	sta *__r1
	clr *__r2
	lda 2,X
	add 8,X
	sta *__r3
	lda *__r2
	adc 7,X
	sta *__r2
	lda *__r1
	ldhx *__r2
	sta ,x
	tsx
	.dbline 148
;       if(k!=j) ReP[j]=0x20;
	lda 2,X
	cmp 3,X
	beq L42
	.dbline 148
	clr *__r0
	lda 3,X
	add 8,X
	sta *__r1
	lda *__r0
	adc 7,X
	sta *__r0
	lda #32
	ldhx *__r0
	sta ,x
	tsx
L42:
	.dbline 149
L39:
	.dbline 145
	inc 3,X
	inc 2,X
L41:
	.dbline 145
	lda 3,X
	cmp #4
	bls L38
L44:
	.dbline 151
;      }
;      
;      NumFormatChange_End:;  
	.dbline -2
L13:
	ais #5
	.dbline 0 ; func end
	rts
	.dbsym l IntDataP 0 pi
	.dbsym l k 2 c
	.dbsym l j 3 c
	.dbsym l i 4 c
	.dbsym l Data 9 pc
	.dbsym l ReP 7 pc
	.dbend
	.area lit
L3:
	.byte 183,214,0
L2:
	.byte 161,230,0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -