微机原理与接口技术中有关LED控制汉字左右移动的代码问题!!

我们的课程有一门《微机原理与接口技术》,老师要我们用唐都的32位微机原理与接口技术教学系统做16*16LED显示汉字,并用键盘控制汉字实现从上往下,从下往上,从左往右,从右往左移动,那位计算机高手能给出从左往右和从右往左的代码,如果能给出其他的更好,小弟在这先谢谢拉!!!!!

我教你呀..
琴帝 第二百七十三章 琴城(上)
http://www.77shu.com 亲亲小说网-最新章节不间断发布!
站长推荐:本书最新章节
间过的很快,转眼间,三个月过去了。

时间总是抚平伤痛最好的办法。由于北方已经没有了威胁,北方军团存在的实际意义已经不大,编制由原本的六十万,削减到了只是用来维持秩序和以防不测的十万,大量北方军都调往了东方,与东方军团汇合,形成了一股巨大的力量。遥遥威胁着佛罗王国。

如果说这场战争大陆各国谁是最大的受害者,其实,并不是蓝迪亚斯一方主要攻击目标米兰帝国,而是佛罗王国。

为了配合蓝迪亚斯击溃米兰,佛罗王国可谓是倾尽全力。所有的国力都投入到了这场战争之中,当叶音竹带领着琴城精锐,在佛罗发动了那洗劫一般的战争之后,佛罗王国内部的情况可以说是每况日下。尤其是以透支的方式重新聚集起大军之后,更是令国库变成了负数。

此时,战争似乎已经结束了,可佛罗也变成了一个空壳,没有了蓝迪亚斯的支持,现在他们甚至连满足士兵的口粮都已经变得捉襟见肘。如果说,蓝迪亚斯帝国的气息是绝望,那佛罗王国的气息恐怕就是毁灭了。

法蓝解封,虽然令米兰帝国无法对佛罗王国展开军事行动,但是,依旧无法挽救佛罗。

米兰第一时间宣布了与佛罗王国解除一切经济贸易关系,同时,不允许任何佛罗人进入米兰帝国境内。

极北荒原地兽人也根本没有和佛罗王国平等交易的意思。就算紫不计前嫌地与之交易,现在地佛罗也拿不出什么东西和兽人交换。和兽人一样。现在佛罗王国内部最缺乏的是粮食。

至于佛罗南方的波庞王国,现在自顾不暇,更不用说救济他们了。对于叛徒,任何人都不会有好脸色。哪怕是蓝迪亚斯和波庞。现在的佛罗王国,可以说是完全被放逐地国家。

三个月的时间。佛罗王国已经快要坚持不住了,尽管他们暂时解散了军队,可是。春天才刚刚到来,想要熬到夏天。等待第一批粮食作物生长出来。对于佛罗来说却太困难了。大片地饥荒令整个佛罗王国都陷入了一片混乱。

佛罗皇室也算是睿智。经过仔细的研究后。为了保住最后一点元气。佛罗王国向米兰帝国递出了割地换粮的提议。

米兰帝国本着“悲天悯人”之心统一了佛罗地提议,当然。对于这个提议的数字方面进行了一定地修改。

最后,佛罗王国以东方三省为代价。向米兰帝国换取了一些粮食,终于能够暂时缓解国内地危机了,但谁都知道。对于佛罗来说。这不过是饮鸩止渴而已。

琴城。

今天地天气很好。风清云淡。阳光洒满大地,令温暖地感觉滋润着植物、动物和琴城各族战士。

琴城中心广场。整整一万名琴城士兵整装待发。叶音绣静静地站在这支军队最前方,脸上流露着淡淡的微笑。

战争,虽然带给了琴城破坏。带走了琴城战士地生命。但是,也让存活下来的战士们变得更加团结。让整个琴城地凝聚力前所未有的强大。

三个月过去了。当初和法蓝约定的时间也就要到了。经过仔细商讨之后,此时,叶音竹正准备出发。前往法蓝。法蓝答应他。可以带领万人级别地军队进驻法蓝。利用法蓝先天地优势进行修炼。

为了这一万个名额。团结一心地琴城各族在这三个月里争论了不知道多少次。

最后,还是叶音竹下了定论。未来琴城发展地路线将和法蓝有些类似,精英是最为重要的。所以。这次挑选地万人。将是琴城最为出色的战士。只有他们。才有进入法蓝修炼的资格。也能够更好地提升自己的实力。

首先通过挑选地。就是琴城两大军团,巨龙骑士团和死神龙狼骑兵。

巨龙骑士团地骑士们原本就经过精挑细选。何况还有巨龙的辅助。当初叶音竹和光明塔主奥布莱恩在确定这件事的时候并没有规定细节,一万地数量限制,可却没有体型地限制吧,而且,叶音竹还堂而皇之地没有将巨龙数量计算在内,它们将以座骑地形式出现。

死神龙狼骑兵的情况也是一样,

资格绝不会有人置疑。这样,一万个名额就去了五

剩余九千五百个名额,就在琴城各个军团中进行挑选。

最后,除了矮人族和地精部落以外,各族最优秀的战士集中起来,组成了这样一支联军。

当然,叶音竹不会忘记座骑的优势,这一万名琴城战士,都拥有着自己地座骑,哪怕是临时拼凑的。所以,有些好笑地一幕出现了。琴城不但有死神龙狼骑兵、巨龙骑士和角鹰骑士,现在还出现了利爪德鲁伊骑士,树妖德鲁伊骑士,甚至是根本无法载人的猛禽德鲁伊骑士。

收益最大地无疑是东龙八宗地东龙战士们,精灵族可以以座骑地身份出现,这空出的骑士名额自然是便宜他们了。

最后,琴城这一万人地组成序列是这样地,三百死神龙狼骑士,二百巨龙骑士,五百名利爪德鲁伊骑士,八百名猛禽德鲁伊骑士,两千名树妖德鲁伊骑士,三千名角鹰骑士。五百比蒙巨兽骑士,再加上混合骑士团。这混合骑士团中的座骑,都是由兽人帝国紫晶军团提供的。

一个月前,极北荒原所有兽人部落已经全部宣布臣服于紫,兽人帝国正式成立。尽管帝国依旧是以各个部落的形式而存在,但是统一的整体已经改变了整个极北荒原的局面。至于之后如何发展,就要看紫的能力了。

兽人帝国成立之后,紫调遣了五百名比蒙巨兽来到琴城,他给的理由很简单,这是琴城本就拥有的序列。琴城永远都会拥有这样一支比蒙巨兽军团的存在。在这五百名比蒙巨兽军团之中,虽然没有白金比蒙,但黄金比蒙的数量却高达五十。再加上三千头紫晶军团中挑选出来的魔兽。琴城实力并没有因为紫晶军团的离去而削弱多少。

所以,此时琴城中心广场的这一万名骑士数量虽然不是很多,但他们却已经代表着整个琴城巨大部分力量。

地精部落没有加入的原因自然是因为地精根本不适合修炼,至于矮人族,则是因为没空。

随着琴城的强大,矮人族的铸造任务也变得越来越繁重了,再说,谁能保证法蓝不会觊觎矮人族的铸造能力呢?因此,在经过仔细商讨之后,矮人族也没有参与到这一万人中。

叶音竹的身体漂浮在半空之中,所有琴城战士的目光都落在他身上。感受着战士们和他们“座骑”高昂的士气,叶音竹只是挥了挥手,他那清朗的声音传遍整个广场,“出发。”

已经修复的巨大城门缓缓敞开,琴城大军分成空军与陆军两大部分正式开拔,朝着法蓝的方向而去。

尽管琴城主力尽去,但现在的琴城依旧不需要惧怕有敌人来犯,大部分琴城战士都留在琴城守护,东龙八宗的宗主们也因为对于法蓝潜意识中的恶感以及法蓝和琴城之间微妙的关系而没有参加这次前往法蓝的行动。

有安雅这位炮台女王在,再加上琴城自身沉淀的实力,当然,还有那被叶音竹在灵魂之中下达了守卫命令的不死魔龙军团,这样的力量别说是自保,就算是攻击一个国家也差不多够了。

巨龙骑士团、角鹰骑士团成为了琴帝号航空母舰的护卫,琴帝号航空母舰战斗群形成了空中的力量。地面上,死神龙狼骑士团奔驰在最前方,五百比蒙巨兽军团在最后方。其他各军在中央,保持着完整的阵型。

如果是以往,叶音竹绝不会选择乘坐琴帝号航空母舰出行的,他会和战士们一同前行,但现在的情况却有些不同。因为,就在几天前,经过精灵族的自然魔法师诊断,苏拉已经有了两个月的身孕。

这个消息不仅让整个琴城欢腾,也令即将做爸爸的叶音竹大喜过望,他思前想后,最后还是不放心将苏拉留在琴城,而是带着她一起出发,而琴帝号航空母舰无疑就是最舒适的出行装备。

紫在管理整治他的兽人帝国,奥利维拉也在忙碌着北方军团的事,此时的琴帝号也只能由叶音竹自己来操控了

一定要用我的呀!!!!!!!!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-12
.MODEL TINY
ADDR_8255_PA EQU 0F000H
ADDR_8255_PB EQU 0F001H
ADDR_8255_PC EQU 0F002H
ADDR_8255_C EQU 0F003H
ADDR_8155_PA EQU 0E101H
ADDR_8155_PB EQU 0E102H
ADDR_8155_C EQU 0E100H
LINE1 EQU ADDR_8255_PA
LINE2 EQU ADDR_8255_PB
ROW1 EQU ADDR_8255_PC
ROW2 EQU ADDR_8155_PA
.STACK 100
.DATA
;往上
JI DB 00H,40H,20H,40H,10H,40H,10H,40H,00H,40H,00H,40H,0F7H,0FEH,10H,40H
DB 10H,40H,10H,40H,10H,40H,10H,40H,14H,40H,18H,40H,10H,40H,00H,40H
AX1 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,80H,04H,40H,18H,30H,20H,08H
DB 18H,30H,04H,40H,05H,40H,0AH,0A0H,0CH,20H,00H,00H,00H,00H,00H,00H
SUAN DB 20H,40H,3EH,7EH,48H,90H,80H,00H,3FH,0F8H,20H,08H,3FH,0F8H,20H,08H
DB 3FH,0F8H,20H,08H,3FH,0F8H,08H,20H,0FFH,0FEH,08H,20H,10H,20H,20H,20H
AX2 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,80H,04H,40H,18H,30H,20H,08H
DB 18H,30H,04H,40H,05H,40H,0AH,0A0H,0CH,20H,00H,00H,00H,00H,00H,00H
JI2 DB 10H,00H,11H,0F0H,11H,10H,11H,10H,0FDH,10H,11H,10H,31H,10H,39H,10H
DB 55H,10H,55H,10H,91H,10H,11H,12H,11H,12H,12H,12H,12H,0EH,14H,00H
AX3 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,80H,04H,40H,18H,30H,20H,08H
DB 18H,30H,04H,40H,05H,40H,0AH,0A0H,0CH,20H,00H,00H,00H,00H,00H,00H
ZHUAN DB 01H,00H,01H,00H,01H,00H,3FH,0F8H,02H,00H,02H,00H,0FFH,0FEH,04H,00H
DB 08H,00H,0FH,0F0H,00H,10H,00H,20H,06H,40H,01H,80H,00H,40H,00H,20H
AX4 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,80H,04H,40H,18H,30H,20H,08H
DB 18H,30H,04H,40H,05H,40H,0AH,0A0H,0CH,20H,00H,00H,00H,00H,00H,00H
YE DB 04H,40H,04H,40H,04H,40H,04H,40H,44H,44H,24H,44H,24H,48H,14H,48H
DB 14H,50H,14H,60H,04H,40H,04H,40H,04H,40H,04H,40H,0FFH,0FEH,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
;往下
JI1 DB 00H,00H,0C0H,40H,0A0H,40H,50H,40H,40H,40H,40H,40H,40H,40H,47H,0FCH
DB 40H,40H,40H,40H,40H,40H,80H,40H,0F0H,40H,20H,40H,60H,40H,80H,00H
AX11 DB 00H,00H,00H,00H,00H,00H,0CH,20H,0AH,0A0H,05H,40H,04H,40H,18H,30H
DB 20H,08H,18H,30H,04H,40H,02H,80H,02H,80H,01H,00H,00H,00H,00H,00H
SUAN1 DB 10H,20H,7FH,0FEH,08H,20H,3FH,0F8H,20H,08H,20H,08H,3FH,0F8H,20H,08H
DB 3FH,0F8H,20H,08H,20H,08H,3FH,0F8H,00H,00H,50H,0A0H,3CH,78H,10H,20H
AX21 DB 00H,00H,00H,00H,00H,00H,0CH,20H,0AH,0A0H,05H,40H,04H,40H,18H,30H
DB 20H,08H,18H,30H,04H,40H,02H,80H,02H,80H,01H,00H,00H,00H,00H,00H
JI21 DB 00H,00H,20H,00H,24H,1EH,22H,12H,21H,10H,21H,10H,0A9H,10H,79H,10H
DB 71H,10H,71H,10H,71H,10H,71H,10H,0F9H,10H,21H,10H,21H,0F0H,00H,00H
AX31 DB 00H,00H,00H,00H,00H,00H,0CH,20H,0AH,0A0H,05H,40H,04H,40H,18H,30H
DB 20H,08H,18H,30H,04H,40H,02H,80H,02H,80H,01H,00H,00H,00H,00H,00H
ZHUAN1 DB 00H,00H,01H,00H,03H,00H,04H,80H,00H,40H,00H,80H,01H,00H,01H,00H
DB 01H,00H,7FH,0FCH,01H,00H,01H,00H,1FH,0F8H,01H,00H,01H,00H,00H,00H
AX41 DB 00H,00H,00H,00H,00H,00H,0CH,20H,0AH,0A0H,05H,40H,04H,40H,18H,30H
DB 20H,08H,18H,30H,04H,40H,02H,80H,02H,80H,01H,00H,00H,00H,00H,00H
YE1 DB 00H,00H,3FH,0FCH,04H,40H,04H,40H,04H,40H,0CH,60H,14H,50H,24H,48H
DB 24H,48H,24H,48H,04H,40H,04H,40H,04H,40H,04H,40H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
;往左
JI23 DB 50H,0FCH,51H,08H,3EH,10H,00H,00H,01H,00H,01H,00H,01H,00H,01H,00H
DB 3FH,0F8H,01H,00H,01H,00H,01H,00H,01H,00H,01H,00H,00H,00H,00H,00H
AX12 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
SUAN2 DB 00H,00H,20H,02H,4FH,0FAH,0EAH,4BH,4AH,4AH,0AH,4EH,0AH,4AH,0AH,4AH
DB 0AH,4AH,2AH,4AH,4AH,4FH,0EAH,4AH,4AH,4AH,0FH,0FAH,00H,02H,00H,00H
AX22 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
JI22 DB 10H,40H,1FH,80H,7FH,0FCH,1FH,00H,10H,80H,00H,44H,00H,08H,3FH,0F0H
DB 20H,00H,20H,00H,20H,00H,3FH,0FCH,00H,04H,00H,04H,00H,1CH,00H,00H
AX32 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
ZHUAN2 DB 00H,00H,00H,00H,02H,00H,02H,00H,12H,00H,12H,00H,12H,08H,7FH,0C4H
DB 12H,26H,12H,15H,12H,08H,12H,00H,02H,00H,02H,00H,00H,00H,00H,00H
AX42 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
YE2 DB 00H,00H,00H,02H,03H,0C2H,00H,22H,00H,12H,3FH,0FEH,00H,02H,00H,02H
DB 00H,02H,00H,02H,3FH,0FEH,00H,12H,00H,22H,03H,0C2H,00H,02H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
;往右
JI33 DB 00H,00H,00H,00H,00H,00H,01H,00H,01H,00H,01H,00H,01H,00H,3FH,0FCH
DB 01H,00H,01H,00H,01H,00H,01H,00H,01H,00H,28H,10H,2FH,0C8H,48H,3CH
AX51 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
SUAN3 DB 00H,00H,00H,00H,00H,00H,00H,02H,20H,02H,77H,0FAH,25H,2FH,15H,2AH
DB 05H,2AH,05H,2AH,05H,2AH,05H,2AH,25H,2EH,77H,0FBH,20H,02H,10H,02H
AX52 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
JI32 DB 00H,00H,00H,0CH,00H,04H,00H,04H,3FH,0FCH,20H,00H,20H,00H,20H,00H
DB 3FH,0F0H,00H,08H,00H,04H,10H,40H,1FH,80H,7FH,0FCH,1FH,80H,10H,40H
AX53 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
ZHUAN3 DB 00H,00H,00H,00H,02H,00H,12H,00H,12H,00H,12H,00H,12H,10H,12H,2AH
DB 7FH,0C4H,12H,08H,12H,00H,12H,00H,12H,00H,02H,00H,00H,00H,00H,00H
AX54 DB 00H,00H,00H,00H,01H,00H,02H,80H,02H,98H,04H,68H,18H,10H,20H,20H
DB 18H,10H,04H,68H,02H,98H,02H,80H,01H,00H,00H,00H,00H,00H,00H,00H
YE3 DB 00H,00H,00H,02H,03H,82H,00H,42H,00H,22H,7FH,0FEH,00H,02H,00H,02H
DB 00H,02H,00H,02H,7FH,0FEH,00H,22H,00H,42H,03H,82H,00H,02H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
.CODE
START: MOV AX,@DATA
MOV DS,AX
MOV ES,AX
NOP
MOV DX,ADDR_8255_C
MOV AL,80H
OUT DX,AL
MOV DX,ADDR_8155_C
MOV AL,01H
OUT DX,AL
SHOW: MOV CX,9
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,04H
JZ L33
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,08H
JZ L44
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,10H
JZ L55
LEA SI,JI23
ZI: PUSH CX
MOV CX,16
HANG: CALL DISP_CH
INC SI
INC SI
LOOP HANG
POP CX
LOOP ZI
JMP SHOW
L33: LEA SI,JI1
ZI1: PUSH CX
MOV CX,16
HANG1: CALL DISP_CH
INC SI
INC SI
LOOP HANG1
POP CX
LOOP ZI1
JMP SHOW
L44: LEA SI,JI
ZI2: PUSH CX
MOV CX,16
HANG2: CALL DISP_CH
INC SI
INC SI
LOOP HANG2
POP CX
LOOP ZI2
JMP SHOW
L55: LEA SI,JI33
ZI3: PUSH CX
MOV CX,16
HANG3: CALL DISP_CH
INC SI
INC SI
LOOP HANG3
POP CX
LOOP ZI3
JMP SHOW
DISP_CH PROC NEAR
PUSH CX
MOV CX,8 //延时函数
DISP_CH_1: CALL DISP1
L1: MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,01H
JZ DISP_CH_1

LOOP DISP_CH_1
POP CX
RET
DISP_CH ENDP
DISP1 PROC NEAR
PUSH SI
PUSH CX
MOV CX,16
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,04H
JZ L31
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,08H
JZ L41
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,10H
JZ L51
MOV BL,01H
MOV BH,00H
REPEAT:MOV DX,ROW1
MOV AL,BL
OUT DX,AL
MOV DX,ROW2
MOV AL,BH
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE1
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE2
OUT DX,AL
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,02H
JZ L2
CALL DL30MS
L2: CALL DL10MS
CALL CLEAR
CLC
RCL BL,1
RCL BH,1
LOOP REPEAT
POP CX
POP SI
RET
L31: JMP DOWN
L41: JMP UP
L51: JMP RIGHT
DISP1 ENDP
UP PROC NEAR
MOV BL,0FEH
MOV BH,0FFH //行选,选中最后一行
REPEAT3:MOV DX,LINE1
MOV AL,BL
OUT DX,AL
MOV DX,LINE2
MOV AL,BH
OUT DX,AL
LODSB
CALL ADJUST
MOV DX,ROW1
OUT DX,AL
LODSB
CALL ADJUST

MOV DX,ROW2
OUT DX,AL
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,02H
JZ L23
CALL DL30MS
L23: CALL DL10MS
CALL CLEAR
STC
RCL BL,1
RCL BH,1
LOOP REPEAT3
POP CX
POP SI
RET
UP ENDP
DOWN PROC NEAR
MOV BH,07FH
MOV BL,0FFH
REPEAT2:MOV DX,LINE1
MOV AL,BL
OUT DX,AL
MOV DX,LINE2
MOV AL,BH
OUT DX,AL
LODSB
CALL ADJUST
MOV DX,ROW1
OUT DX,AL
LODSB //块装入指令
CALL ADJUST
MOV DX,ROW2
OUT DX,AL
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,02H
JZ L22
CALL DL30MS
L22: CALL DL10MS
CALL CLEAR
STC
RCR BH,1
RCR BL,1
LOOP REPEAT2
POP CX
POP SI
RET
DOWN ENDP
LEFT PROC NEAR
MOV BL,01H
MOV BH,00H
REPEAT4:MOV DX,ROW1
MOV AL,BL
OUT DX,AL
MOV DX,ROW2
MOV AL,BH
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE1
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE2
OUT DX,AL
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,02H
JZ L24
CALL DL30MS
L24: CALL DL10MS
CALL CLEAR
CLC
RCL BL,1
RCL BH,1
LOOP REPEAT4
POP CX
POP SI
RET
LEFT ENDP
RIGHT PROC NEAR
MOV BH,80H
MOV BL,00H
REPEAT5:MOV DX,ROW1
MOV AL,BL
OUT DX,AL
MOV DX,ROW2
MOV AL,BH
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE1
OUT DX,AL
LODSB
CALL ADJUST
NOT AL
MOV DX,LINE2
OUT DX,AL
MOV DX,ADDR_8155_PB
IN AL,DX
TEST AL,02H
JZ L25
CALL DL30MS
L25: CALL DL10MS
CALL CLEAR
CLC
RCR BH,1
RCR BL,1
LOOP REPEAT5
POP CX
POP SI
RET
RIGHT ENDP
CLEAR PROC NEAR
MOV AL,0FFH
MOV DX,LINE1
OUT DX,AL
MOV DX,LINE2
OUT DX,AL
MOV AL,0
MOV DX,ROW1
OUT DX,AL
MOV DX,ROW2
OUT DX,AL
RET
CLEAR ENDP
ADJUST PROC NEAR
PUSH CX
MOV CX,8
ADJUST1:RCL AL,1
XCHG AL,AH
RCR AL,1
XCHG AL,AH
LOOP ADJUST1
MOV AL,AH
POP CX
RET
ADJUST ENDP
DL10ms PROC NEAR
PUSH CX
MOV CX,50
LOOP $
POP CX
RET
DL10ms ENDP
DL30ms PROC NEAR
PUSH CX
MOV CX,200
LOOP $
POP CX
RET
DL30ms ENDP
END START