hi again ..
Does anybody have any idea how could I draw a line between two points using assembly language?
e.g. if you have the first point DX1, CX1 and DX2, CX2...
I wanna draw a line between them, simply, I wanna program that I give him two points and then he draws a line between them.
I prefere the program to be simple too :)
.. Thanks

Recommended Answers

All 12 Replies

how to draw a line depends on the operating system. If you are using MS-Windows you can use the win32 api graphics functions. If you are in MS-DOS you could probably just use a line drawn with dashes, in a loop of some sort.

Thanks guys, however you might not get my point. I'm using MS-DOS, TASM program to write my assembly programs, windows xp.
I think most of you know the INT10H function AH = 0CH, while AL = color value and before that we choose graphics mode INT10H AH = 12h. Interrput INT10H AH = 0CH and AL = 02 for green dot. it simply draws a pixel in the screen 640*480, while you specify CX for columns and DX for rows. My problem is how could I join two points with a straight line for example CX1,DX1 and CX2,DX2. You know it's too hard to use math equation I have to define many things. So, if you have another way rather than using math equation I'll be happy to have it :)..
Thanks again guys

Please guys I need help with this problem. :(

Use the link I posted.

Calculate a series of XY positions that get you from the start to the end.

For each position, call INT10H function AH = 0CH, with the other registers set to the colour and position you want.

It's just a bit of maths, and a loop calling INT10H. What more do you want?

I can't implement bresenham algorithm on assembly. It's too hard to do so. because of many things, first pixals are integers number and it's hard to manipulate them. Second, in assembly you don't have math library.
I don't wanna draw each line that is representing first second, second second, third second and so on. Also the same for minutes and hours. I tried to implement bresenham algorithm but it didn't work.

So if you see that too easy to implement it please do it for me ..
Thanks in advance.

> I can't implement bresenham algorithm on assembly. It's too hard to do so.
So give up already and go back to doing things in a high level language if you can't deal without all the creature comforts.
Assembler programming can be damn hard work at times, and you have to occasionally do every little thing yourself.

I mean, what would you do if the INT10 function was not available, and you had to do all the address arithmetic to work out the memory location for a pixel. Could you manage that?

> Second, in assembly you don't have math library.
Unless you write your own.
Read up on fixed point arithmetic if you're worried about fractions.

There's also an integer version.
http://www.cs.helsinki.fi/group/goa/mallinnus/lines/bresenh.html
But that requires some reading on your part as well, so perhaps it's not such a good idea.

> I tried to implement bresenham algorithm but it didn't work.
Well posting it might at least help convince some of us that you're pulling your weight around here, and not just looking for free handouts.
Don't forget to comment it thoroughly, and remember to use the [code]
[/code] tags if you do decide to post it.

> So if you see that too easy to implement it please do it for me ..
While you get all the credit?
And what happens the next time you have a problem, will you be back cap in hand looking for more free handouts?

Listen tough guy, I did the project without any help. However I am trying now to reduce the size of the code.
This is my code and it's 122KB ...
I don't think so there is someone can solve like this. The project is analog clock.

TITLE "Program OF CLOCK"
.MODEL large
.STACK 500
.DATA
.CODE
     MOV AX, @DATA
     MOV DS, AX
     MOV AH, 0FH
     INT 10H
     PUSH AX
     MOV AH, 00H
     MOV AL, 12H
     INT 10H
 
start:MOV AX, 0C06H        ;number3
     MOV DX, 222
  num31:MOV CX, 521
  num32:INT 10H
     INC CX
     CMP CX, 538
     JB num32
     inc dx
     cmp dx, 224
     jb num31
     MOV DX, 239
  num33:MOV CX, 521
  num34:INT 10H
     INC CX
     CMP CX, 538
     JB num34
     inc dx
     cmp dx, 241
     jb num33
     MOV DX, 256
  num35:MOV CX, 521
  num36:INT 10H
     INC CX
     CMP CX, 538
     JB num36
     inc dx
     cmp dx, 258
     jb num35
     MOV DX, 222
  num37:MOV CX, 536
  num38:INT 10H
     INC CX
     CMP CX, 538
     JB num38
     inc dx
     cmp dx, 258
     jb num37
     MOV AX, 0C05H ;number6
     MOV DX, 436
  num61:MOV CX, 311
  num62:INT 10H
     INC CX
     CMP CX, 313
     JB num62
     inc dx
     cmp dx, 472
     jb num61
     MOV DX, 436
  num63:MOV CX, 311
  num64:INT 10H
     INC CX
     CMP CX, 329
     JB num64
     inc dx
     cmp dx, 438
     jb num63
     MOV DX, 453
  num65:MOV CX, 311
  num66:INT 10H
     INC CX
     CMP CX, 329
     JB num66
     inc dx
     cmp dx, 455
     jb num65
     MOV DX, 470
  num67:MOV CX, 311
  num68:INT 10H
     INC CX
     CMP CX, 329
     JB num68
     inc dx
     cmp dx, 472
     jb num67
     MOV DX, 453
  num69:MOV CX, 327
  num610:INT 10H
     INC CX
     CMP CX, 329
     JB num610
     inc dx
     cmp dx, 472
     jb num69
     MOV AX, 0C04H ;number9
     MOV DX, 222
  num91:MOV CX, 118
  num92:INT 10H
     INC CX
     CMP CX, 120
     JB num92
     inc dx
     cmp dx, 258
     jb num91
     MOV DX, 222
  num93:MOV CX, 101
  num94:INT 10H
     INC CX
     CMP CX, 120
     JB num94
     inc dx
     cmp dx, 224
     jb num93
     MOV DX, 222
  num95:MOV CX, 101
  num96:INT 10H
     INC CX
     CMP CX, 103
     JB num96
     inc dx
     cmp dx, 241
     jb num95
     MOV DX, 239
  num97:MOV CX, 101
  num98:INT 10H
     INC CX
     CMP CX, 120
     JB num98
     inc dx
     cmp dx, 241
     jb num97
     MOV DX, 256
  num99:MOV CX, 101
  num910:INT 10H
     INC CX
     CMP CX, 120
     JB num910
     inc dx
     cmp dx, 258
     jb num99
     MOV AX, 0C07H ;number12
     MOV DX, 8
  num121:MOV CX, 309
  num122:INT 10H
     INC CX
     CMP CX, 311
     JB num122
     inc dx
     cmp dx, 44
     jb num121
     MOV DX, 8
  num123:MOV CX, 313
  num124:INT 10H
     INC CX
     CMP CX, 332
     JB num124
     inc dx
     cmp dx, 10
     jb num123
     MOV DX, 8
  num125:MOV CX, 330
  num126:INT 10H
     INC CX
     CMP CX, 332
     JB num126
     inc dx
     cmp dx, 27
     jb num125
     MOV DX, 25
  num127:MOV CX, 313
  num128:INT 10H
     INC CX
     CMP CX, 332
     JB num128
     inc dx
     cmp dx, 27
     jb num127
     MOV DX, 25
  num129:MOV CX, 313
  num1210:INT 10H
     INC CX
     CMP CX, 315
     JB num1210
     inc dx
     cmp dx, 44
     jb num129
     MOV DX,42
  num1211:MOV CX, 313
  num1212:INT 10H
     INC CX
     CMP CX, 332
     JB num1212
     inc dx
     cmp dx, 44
     jb num1211
 
     MOV DX, 48
  ct2:MOV CX, 124
     MOV AX, 0C01H
  ct1:INT 10H
     INC CX
     CMP CX, 517
     JB ct1
     inc dx
     cmp dx, 50
     jb ct2
 
     MOV DX, 430
  cp2:MOV CX, 124
     MOV AX, 0C01H
  cp1:INT 10H
     INC CX
     CMP CX, 517
     JB cp1
     inc dx
     cmp dx, 432
     jb cp2
 
     MOV dX, 48
  cl2:MOV CX, 124
     MOV AX, 0C01H
  cl1:INT 10H
     INC CX
     CMP CX, 126
     JB cl1
     inc dx
     cmp dx, 432
     jb cl2
 
     MOV DX, 48
  crr2:MOV CX, 515
     MOV AX, 0C01H
  cr1:INT 10H
     INC CX
     CMP CX, 517
     JB cr1
     inc dx
     cmp dx, 432
     jb crr2
     MOV AX, 0C03H
     MOV CX, 333
     MOV DX, 55  ;m1
     INT 10H
     MOV CX, 352
     MOV DX, 58  ;m2
     INT 10H
     MOV CX, 370
     MOV DX, 64  ;m3
     INT 10H
     MOV CX, 388
     MOV DX, 71  ;m4
     INT 10H
     MOV CX, 423
     MOV DX, 91  ;m6
     INT 10H
     MOV CX, 441
     MOV DX, 103 ;m7
     INT 10H
     MOV CX, 456
     MOV DX, 117 ;m8
     INT 10H
     MOV CX, 469
     MOV DX, 133 ;m9
     INT 10H
     MOV CX, 494
     MOV DX, 167 ;m11
     INT 10H
     MOV CX, 501
     MOV DX, 186 ;m12
     INT 10H
     MOV CX, 506
     MOV DX, 206 ;m13
     INT 10H
     MOV CX, 509
     MOV DX, 225 ;m14
     INT 10H
     MOV CX, 509
     MOV DX, 255 ;m16
     INT 10H
     MOV CX, 506
     MOV DX, 274 ;m17
     INT 10H
     MOV CX, 501
     MOV DX, 294 ;m18
     INT 10H
     MOV CX, 494
     MOV DX, 313 ;m19
     INT 10H
     MOV CX, 469
     MOV DX, 347 ;m21
     INT 10H
     MOV CX, 456
     MOV DX, 363 ;m22
     INT 10H
     MOV CX, 441
     MOV DX, 377 ;m23
     INT 10H
     MOV CX, 423
     MOV DX, 389 ;m24
     INT 10H
     MOV CX, 388
     MOV DX, 409 ;m26
     INT 10H
     MOV CX, 370
     MOV DX, 416 ;m27
     INT 10H
     MOV CX, 352
     MOV DX, 422 ;m28
     INT 10H
     MOV CX, 333
     MOV DX, 425 ;m29
     INT 10H
     MOV CX, 307
     MOV DX, 425 ;m31
     INT 10H
     MOV CX, 288
     MOV DX, 422 ;m32
     INT 10H
     MOV CX, 270
     MOV DX, 416 ;m33
     INT 10H
     MOV CX, 252
     MOV DX, 409 ;m34
     INT 10H
     MOV CX, 217
     MOV DX, 389 ;m36
     INT 10H
     MOV CX, 199
     MOV DX, 377 ;m37
     INT 10H
     MOV CX, 184
     MOV DX, 363 ;m38
     INT 10H
     MOV CX, 171
     MOV DX, 347 ;m39
     INT 10H
     MOV CX, 146
     MOV DX, 313 ;m41
     INT 10H
     MOV CX, 139
     MOV DX, 294 ;m42
     INT 10H
     MOV CX, 134
     MOV DX, 274 ;m43
     INT 10H
     MOV CX, 131
     MOV DX, 255 ;m44
     INT 10H
     MOV CX, 131
     MOV DX, 225 ;m46
     INT 10H
     MOV CX, 134
     MOV DX, 206 ;m47
     INT 10H
     MOV CX, 139
     MOV DX, 186 ;m48
     INT 10H
     MOV CX, 146
     MOV DX, 167 ;m49
     INT 10H
     MOV CX, 171
     MOV DX, 133 ;m51
     INT 10H
     MOV CX, 184
     MOV DX, 117 ;m52
     INT 10H
     MOV CX, 199
     MOV DX, 103 ;m53
     INT 10H
     MOV CX, 217
     MOV DX, 91  ;m54
     INT 10H
     MOV CX, 252
     MOV DX, 71  ;m56
     INT 10H
     MOV CX, 270
     MOV DX, 64  ;m57
     INT 10H
     MOV CX, 288
     MOV DX, 58  ;m58
     INT 10H
     MOV CX, 307
     MOV DX, 55  ;m59
     INT 10H
     MOV dX, 78
  c51:MOV CX, 406
     MOV AX, 0C0fH    ;m5
  c52:INT 10H
     INC CX
     CMP CX, 410
     JB c52
     inc dx
     cmp dx, 82
     jb c51
     MOV dX, 147
  c101:MOV CX, 482
     MOV AX, 0C0fH    ;m10
  c102:INT 10H
     INC CX
     CMP CX, 486
     JB c102
     inc dx
     cmp dx, 151
     jb c101
     MOV dX, 398
  c251:MOV CX, 406
     MOV AX, 0C0fH    ;m25
  c252:INT 10H
     INC CX
     CMP CX, 410
     JB c252
     inc dx
     cmp dx, 402
     jb c251
     MOV dX, 329
  c201:MOV CX, 482
     MOV AX, 0C0fH    ;m20
  c202:INT 10H
     INC CX
     CMP CX, 486
     JB c202
     inc dx
     cmp dx, 333
     jb c201
     MOV dX, 398
  c351:MOV CX, 231
     MOV AX, 0C0fH    ;m35
  c352:INT 10H
     INC CX
     CMP CX, 235
     JB c352
     inc dx
     cmp dx, 402
     jb c351
     MOV dX, 329
  c401:MOV CX, 154
     MOV AX, 0C0fH    ;m40
  c402:INT 10H
     INC CX
     CMP CX, 158
     JB c402
     inc dx
     cmp dx, 333
     jb c401
     MOV dX, 147
  c501:MOV CX, 154
     MOV AX, 0C0fH    ;m50
  c502:INT 10H
     INC CX
     CMP CX, 158
     JB c502
     inc dx
     cmp dx, 151
     jb c501
     MOV dX, 78
  c551:MOV CX, 230
     MOV AX, 0C0fH    ;m55
  c552:INT 10H
     INC CX
     CMP CX, 234
     JB c552
     inc dx
     cmp dx, 82
     jb c551
     mov ah,2h
     int 1ah
     dec cl
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
     cmp cl,1h
     jb mm1
     jmp nexc2
mm1:  MOV CX, 320
     MOV DX, 58
     MOV AX, 0C00H
 hmm12:INT 10H
     INC DX
     CMP DX, 240
     JB hmm12
     jmp start5  
nexc2:cmp cl,2h
     je mm2
     jmp nexc3
mm2:  MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc2:mov bl,5
mmn2:INT 10H
     deC DX
     dec bl
     jnz mmn2
     mov bl,6
     inc cx
mmn22:INT 10H
     deC DX
     dec bl
     jnz mmn22
     inc cx
     CMP cx, 352
     JB bacc2
     jmp start5
nexc3:cmp cl,3h
     je mm3
     jmp nexc4
mm3:  MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc3:mov bl,4
mmn3:INT 10H
     deC DX
     dec bl
     jnz mmn3
     mov bl,3
     inc cx
mmn32:INT 10H
     deC DX
     dec bl
     jnz mmn32
     inc cx
     CMP cx,368
     JB bacc3
     jmp start5
nexc4:cmp cl,4h
     je mm4
     jmp nexc5
mm4:  MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc4:mov bl,3
mmn4:INT 10H
     deC DX
     dec bl
     jnz mmn4
     mov bl,2
     inc cx
mmn42:INT 10H
     deC DX
     dec bl
     jnz mmn42     
     inc cx
     CMP cx, 385
     JB bacc4
     jmp start5
nexc5:cmp cl,5h
     je mm5
     jmp nexc6
mm5:  MOV CX, 405
     MOV DX, 82
     MOV AX, 0C00H
bacc51:mov bl,2
mmn51:INT 10H
     inc dX
     dec bl
     jnz mmn51  
     mov bl,2
     dec cx
mmn52:INT 10H
     inc dX
     dec bl
     jnz mmn52
     mov bl,2
     dec cx
mmn53:INT 10H
     inc dX
     dec bl
     jnz mmn53
     mov bl,1
     dec cx
mmn54:INT 10H
     inc dX
     dec bl
     jnz mmn54    
     mov bl,2
     dec cx
mmn55:INT 10H
     inc dX
     dec bl
     jnz mmn55     
     mov bl,2
     dec cx
mmn56:INT 10H
     inc dX
     dec bl
     jnz mmn56   
     mov bl,2
     dec cx
mmn57:INT 10H
     inc dX
     dec bl
     jnz mmn57
     dec cx
     CMP dx,240
     JB bacc51
     jmp start5
nexc6:cmp cl,6h
     je mm6
     jmp nexc7
mm6:  MOV CX, 421
     MOV DX, 93
     MOV AX, 0C00H
bacc61:mov bl,1
mmn61:INT 10H
     inc dX
     dec bl
     jnz mmn61  
     mov bl,2
     dec cx
mmn62:INT 10H
     inc dX
     dec bl
     jnz mmn62
     mov bl,1
     dec cx
mmn63:INT 10H
     inc dX
     dec bl
     jnz mmn63
     mov bl,2
     dec cx
mmn64:INT 10H
     inc dX
     dec bl
     jnz mmn64    
     mov bl,1
     dec cx
mmn65:INT 10H
     inc dX
     dec bl
     jnz mmn65     
     mov bl,2
     dec cx
mmn66:INT 10H
     inc dX
     dec bl
     jnz mmn66   
     mov bl,1
     dec cx
mmn67:INT 10H
     inc dX
     dec bl
     jnz mmn67
     dec cx
     CMP dx, 240
     JB bacc61
     jmp start5
nexc7:cmp cl,7h
     je mm7
     jmp nexc8
mm7:  MOV CX, 439
     MOV DX, 105
     MOV AX, 0C00H
bacc71:mov bl,1
mmn71:INT 10H
     inc dX
     dec bl
     jnz mmn71  
     mov bl,1
     dec cx
mmn72:INT 10H
     inc dX
     dec bl
     jnz mmn72
     mov bl,1
     dec cx
mmn73:INT 10H
     inc dX
     dec bl
     jnz mmn73
     mov bl,1
     dec cx
mmn74:INT 10H
     inc dX
     dec bl
     jnz mmn74    
     mov bl,2
     dec cx
mmn75:INT 10H
     inc dX
     dec bl
     jnz mmn75     
     mov bl,1
     dec cx
mmn76:INT 10H
     inc dX
     dec bl
     jnz mmn76   
     mov bl,1
     dec cx
mmn77:INT 10H
     inc dX
     dec bl
     jnz mmn77
     mov bl,1
     dec cx
mmn78:INT 10H
     inc dX
     dec bl
     jnz mmn78
     dec cx
     CMP dx, 240
     JB bacc71
     jmp start5
nexc8:cmp cl,8h
     je mm8
     jmp nexc9
mm8:  MOV CX, 454
     MOV DX, 119
     MOV AX, 0C00H
bacc81:mov bl,1
mmn81:INT 10H
     dec cX
     dec bl
     jnz mmn81  
     mov bl,1
     inc dx
mmn82:INT 10H
     dec cX
     dec bl
     jnz mmn82
     mov bl,1
     inc dx
mmn83:INT 10H
     dec cX
     dec bl
     jnz mmn83
     mov bl,1
     inc dx
mmn84:INT 10H
     dec cX
     dec bl
     jnz mmn84    
     mov bl,2
     inc dx
mmn85:INT 10H
     dec cX
     dec bl
     jnz mmn85     
     mov bl,1
     inc dx
mmn86:INT 10H
     dec cX
     dec bl
     jnz mmn86   
     mov bl,1
     inc dx
mmn87:INT 10H
     dec cX
     dec bl
     jnz mmn87
     mov bl,1
     inc dx
mmn88:INT 10H
     dec cX
     dec bl
     jnz mmn88
     mov bl,1
     inc dx
mmn89:INT 10H
     dec cX
     dec bl
     jnz mmn89
     inc dx
     CMP dx, 240
     JB bacc81
     jmp start5
nexc9:cmp cl,9h
     je mm9
     jmp nexc10
mm9:  MOV CX, 467
     MOV DX, 135
     MOV AX, 0C00H
bacc91:mov bl,2
mmn91:INT 10H
     dec cX
     dec bl
     jnz mmn91
     mov bl,1
     inc dx
mmn92:INT 10H
     dec cX
     dec bl
     jnz mmn92
     mov bl,2
     inc dx
mmn93:INT 10H
     dec cX
     dec bl
     jnz mmn93
     mov bl,1
     inc dx
mmn94:INT 10H
     dec cX
     dec bl
     jnz mmn94    
     mov bl,1
     inc dx
mmn95:INT 10H
     dec cX
     dec bl
     jnz mmn95
     inc dx
     CMP dx, 240
     JB bacc91
     jmp start5
nexc10:cmp cl,10h
     je mm10
     jmp nexc11
mm10: MOV CX, 480
     MOV DX, 151
     MOV AX, 0C00H
bacc101:mov bl,2
mmn101:INT 10H
     dec cX
     dec bl
     jnz mmn101
     mov bl,1
     inc dx
mmn102:INT 10H
     deC cX
     dec bl
     jnz mmn102
     mov bl,2
     inc dx
mmn103:INT 10H
     deC cX
     dec bl
     jnz mmn103
     mov bl,2
     inc dx
mmn104:INT 10H
     deC cX
     dec bl
     jnz mmn104    
     inc dx
     CMP dx, 240
     JB bacc101
     jmp start5
nexc11:cmp cl,11h
     je mm11
     jmp nexc12
mm11: MOV CX, 492
     MOV DX, 169
     MOV AX, 0C00H
bacc111:mov bl,3
mmn111:INT 10H
     dec cX
     dec bl
     jnz mmn111
     mov bl,2
     inc dx
mmn112:INT 10H
     deC cX
     dec bl
     jnz mmn112      
     mov bl,2
     inc dx
mmn113:INT 10H
     deC cX
     dec bl
     jnz mmn113
     inc dx
     CMP dx, 240
     JB bacc111
     jmp start5
nexc12:cmp cl,12h
     je mm12
     jmp nexc13
mm12: MOV CX, 499
     MOV DX, 187
     MOV AX, 0C00H
bacc121:mov bl,3
mmn121:INT 10H
     dec cX
     dec bl
     jnz mmn121
     mov bl,3
     inc dx
mmn122:INT 10H
     deC cX
     dec bl
     jnz mmn122      
     mov bl,4
     inc dx
mmn123:INT 10H
     deC cX
     dec bl
     jnz mmn123 
     inc dx
     CMP dx, 240
     JB bacc121
     jmp start5
nexc13:cmp cl,13h
     je mm13
     jmp nexc14
mm13: MOV CX, 504
     MOV DX, 206
     MOV AX, 0C00H
bacc131:mov bl,5
mmn131:INT 10H
     dec cX
     dec bl
     jnz mmn131
     mov bl,6
     inc dx
mmn132:INT 10H
     deC cX
     dec bl
     jnz mmn132    
     inc dx
     CMP dx, 240
     JB bacc131
     jmp start5
nexc14:cmp cl,14h
     je mm14
     jmp nexc15
mm14: MOV CX, 507
     MOV DX, 225
     MOV AX, 0C00H
bacc141:mov bl,12
mmn141:INT 10H
     dec cX
     dec bl
     jnz mmn141
     inc dx
     CMP dx, 240
     JB bacc141
     jmp start5
nexc15:cmp cl,15h
     je mm15
     jmp nexc16
mm15: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
 hmm3:INT 10H
     INC CX
     CMP CX, 507
     JB hmm3
     jmp start5
nexc16:cmp cl,16h
     je mm16
     jmp nexc17
mm16: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc161:mov bl,12
mmn161:INT 10H
     inc cX
     dec bl
     jnz mmn161
     inc dx
     CMP cx, 507
     JB bacc161
     jmp start5
nexc17:cmp cl,17h
     je mm17
     jmp nexc18
mm17: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc171:mov bl,5
mmn171:INT 10H
     inc cX
     dec bl
     jnz mmn171
     mov bl,6
     inc dx
mmn172:INT 10H
     inc cX
     dec bl
     jnz mmn172    
     inc dx
     CMP cx, 502
     JB bacc171
     jmp start5
nexc18:cmp cl,18h
     je mm18
     jmp nexc19
mm18: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc181:mov bl,3
mmn181:INT 10H
     inc cX
     dec bl
     jnz mmn181
     mov bl,3
     inc dx
mmn182:INT 10H
     inc cX
     dec bl
     jnz mmn182      
     mov bl,4
     inc dx
mmn183:INT 10H
     inc cX
     dec bl
     jnz mmn183 
     inc dx
     CMP cx, 499
     JB bacc181
     jmp start5
nexc19:cmp cl,19h
     je mm19
     jmp nexc20
mm19: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc191:mov bl,3
mmn191:INT 10H
     inc cX
     dec bl
     jnz mmn191
     mov bl,2
     inc dx
mmn192:INT 10H
     inc cX
     dec bl
     jnz mmn192      
     mov bl,2
     inc dx
mmn193:INT 10H
     inc cX
     dec bl
     jnz mmn193
     inc dx
     CMP cx,492
     JB bacc191
     jmp start5
nexc20:cmp cl,20h
     je mm20
     jmp nexc21
mm20: MOV CX, 320
     MOV DX, 239
     MOV AX, 0C00H
bacc201:mov bl,2
mmn201:INT 10H
     inc cX
     dec bl
     jnz mmn201
     mov bl,1
     inc dx
mmn202:INT 10H
     inc cX
     dec bl
     jnz mmn202
     mov bl,2
     inc dx
mmn203:INT 10H
     inc cX
     dec bl
     jnz mmn203
     mov bl,2
     inc dx
mmn204:INT 10H
     inc cX
     dec bl
     jnz mmn204    
     inc dx
     CMP cx, 480
     JB bacc201
     jmp start5
nexc21:cmp cl,21h
     je mm21
     jmp nexc22
mm21: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc211:mov bl,2
mmn211:INT 10H
     inc cX
     dec bl
     jnz mmn211
     mov bl,1
     inc dx
mmn212:INT 10H
     inc cX
     dec bl
     jnz mmn212
     mov bl,2
     inc dx
mmn213:INT 10H
     inc cX
     dec bl
     jnz mmn213
     mov bl,1
     inc dx
mmn214:INT 10H
     inc cX
     dec bl
     jnz mmn214    
     mov bl,1
     inc dx
mmn215:INT 10H
     inc cX
     dec bl
     jnz mmn215
     inc dx
     CMP cx, 467
     JB bacc211
     jmp start5
nexc22:cmp cl,22h
     je mm22
     jmp nexc23
mm22: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc221:mov bl,1
mmn221:INT 10H
     inc cX
     dec bl
     jnz mmn221  
     mov bl,1
     inc dx
mmn222:INT 10H
     inc cX
     dec bl
     jnz mmn222
     mov bl,1
     inc dx
mmn223:INT 10H
     inc cX
     dec bl
     jnz mmn223
     mov bl,1
     inc dx
mmn224:INT 10H
     inc cX
     dec bl
     jnz mmn224    
     mov bl,2
     inc dx
mmn225:INT 10H
     inc cX
     dec bl
     jnz mmn225     
     mov bl,1
     inc dx
mmn226:INT 10H
     inc cX
     dec bl
     jnz mmn226   
     mov bl,1
     inc dx
mmn227:INT 10H
     inc cX
     dec bl
     jnz mmn227
     mov bl,1
     inc dx
mmn228:INT 10H
     inc cX
     dec bl
     jnz mmn228
     mov bl,1
     inc dx
mmn229:INT 10H
     inc cX
     dec bl
     jnz mmn229
     inc dx
     CMP dx, 361
     JB bacc221
     jmp start5
nexc23:cmp cl,23h
     je mm23
     jmp nexc24
mm23: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc231:mov bl,1
mmn231:INT 10H
     inc dX
     dec bl
     jnz mmn231  
     mov bl,1
     inc cx
mmn232:INT 10H
     inc dX
     dec bl
     jnz mmn232
     mov bl,1
     inc cx
mmn233:INT 10H
     inc dX
     dec bl
     jnz mmn233
     mov bl,1
     inc cx
mmn234:INT 10H
     inc dX
     dec bl
     jnz mmn234    
     mov bl,2
     inc cx
mmn235:INT 10H
     inc dX
     dec bl
     jnz mmn235     
     mov bl,1
     inc cx
mmn236:INT 10H
     inc dX
     dec bl
     jnz mmn236   
     mov bl,1
     inc cx
mmn237:INT 10H
     inc dX
     dec bl
     jnz mmn237
     mov bl,1
     inc cx
mmn238:INT 10H
     inc dX
     dec bl
     jnz mmn238
     inc cx
     CMP dx, 375
     JB bacc231
     jmp start5
nexc24:cmp cl,24h
     je mm24
     jmp nexc25
mm24: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc241:mov bl,1
mmn241:INT 10H
     inc dX
     dec bl
     jnz mmn241  
     mov bl,2
     inc cx
mmn242:INT 10H
     inc dX
     dec bl
     jnz mmn242
     mov bl,1
     inc cx
mmn243:INT 10H
     inc dX
     dec bl
     jnz mmn243
     mov bl,2
     inc cx
mmn244:INT 10H
     inc dX
     dec bl
     jnz mmn244    
     mov bl,1
     inc cx
mmn245:INT 10H
     inc dX
     dec bl
     jnz mmn245     
     mov bl,2
     inc cx
mmn246:INT 10H
     inc dX
     dec bl
     jnz mmn246   
     mov bl,1
     inc cx
mmn247:INT 10H
     inc dX
     dec bl
     jnz mmn247
     inc cx
     CMP dx, 387
     JB bacc241
     jmp start5
nexc25:cmp cl,25h
     je mm25
     jmp nexc26
mm25: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc251:mov bl,2
mmn251:INT 10H
     inc dX
     dec bl
     jnz mmn251  
     mov bl,2
     inc cx
mmn252:INT 10H
     inc dX
     dec bl
     jnz mmn252
     mov bl,2
     inc cx
mmn253:INT 10H
     inc dX
     dec bl
     jnz mmn253
     mov bl,1
     inc cx
mmn254:INT 10H
     inc dX
     dec bl
     jnz mmn254    
     mov bl,2
     inc cx
mmn255:INT 10H
     inc dX
     dec bl
     jnz mmn255     
     mov bl,2
     inc cx
mmn256:INT 10H
     inc dX
     dec bl
     jnz mmn256   
     mov bl,2
     inc cx
mmn257:INT 10H
     inc dX
     dec bl
     jnz mmn257
     inc cx
     CMP dx, 390
     JB bacc251
     jmp start5
nexc26:cmp cl,26h
     je mm26
     jmp nexc27
mm26: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc261:mov bl,3
mmn261:INT 10H
     inc DX
     dec bl
     jnz mmn261
     mov bl,2
     inc cx
mmn262:INT 10H
     inc DX
     dec bl
     jnz mmn262     
     inc cx
     CMP cx, 385
     JB bacc261
     jmp start5
nexc27:cmp cl,27h
     je mm27
     jmp nexc28
mm27: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc271:mov bl,4
mmn271:INT 10H
     inc DX
     dec bl
     jnz mmn271
     mov bl,3
     inc cx
mmn272:INT 10H
     inc DX
     dec bl
     jnz mmn272
     inc cx
     CMP dx,413
     JB bacc271
     jmp start5
nexc28:cmp cl,28h
     je mm28
     jmp nexc29
mm28: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc281:mov bl,5
mmn281:INT 10H
     inc DX
     dec bl
     jnz mmn281
     mov bl,6
     inc cx
mmn282:INT 10H
     inc DX
     dec bl
     jnz mmn282
     inc cx
     CMP cx, 352
     JB bacc281
     jmp start5
nexc29:cmp cl,29h
     je mm29
     jmp nexc30
mm29: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc291:mov bl,14
mmn291:INT 10H
     inc DX
     dec bl
     jnz mmn291
     inc cx
     CMP dx, 422
     JB bacc291
     jmp start5
nexc30:cmp cl,30h
     je mm30
     jmp nexc31
mm30: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
 hmm6:INT 10H
     INC DX
     CMP DX, 422
     JB hmm6
     jmp start5
nexc31:cmp cl,31h
     je mm31
     jmp nexc32
mm31: MOV CX, 307
     MOV DX, 422
     MOV AX, 0C00H
bacc311:mov bl,14
mmn311:INT 10H
     dec DX
     dec bl
     jnz mmn311
     inc cx
     CMP cx, 320
     JB bacc311
     jmp start5
nexc32:cmp cl,32h
     je mm32
     jmp nexc33
mm32: MOV CX, 288
     MOV DX, 420
     MOV AX, 0C00H
bacc321:mov bl,5
mmn321:INT 10H
     dec DX
     dec bl
     jnz mmn321
     mov bl,6
     inc cx
mmn322:int 10h
     dec DX
     dec bl
     jnz mmn322
     inc cx
     CMP cx, 320
     JB bacc321
     jmp start5
nexc33:cmp cl,33h
     je mm33
     jmp nexc34
mm33: MOV CX, 272
     MOV DX, 413
     MOV AX, 0C00H
bacc331:mov bl,4
mmn331:INT 10H
     dec DX
     dec bl
     jnz mmn331
     mov bl,3
     inc cx
mmn332:INT 10H
     dec DX
     dec bl
     jnz mmn332
     inc cx
     CMP cx,320
     JB bacc331
     jmp start5
nexc34:cmp cl,34h
     je mm34
     jmp nexc35
mm34: MOV CX, 254
     MOV DX, 406
     MOV AX, 0C00H
bacc341:mov bl,3
mmn341:INT 10H
     dec DX
     dec bl
     jnz mmn341
     mov bl,2
     inc cx
mmn342:INT 10H
     dec DX
     dec bl
     jnz mmn342     
     inc cx
     CMP cx, 320
     JB bacc341
     jmp start5
nexc35:cmp cl,35h
     je mm35
     jmp nexc36
mm35: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc351:mov bl,2
mmn351:INT 10H
     inc dX
     dec bl
     jnz mmn351  
     mov bl,2
     dec cx
mmn352:INT 10H
     inc dX
     dec bl
     jnz mmn352
     mov bl,2
     dec cx
mmn353:INT 10H
     inc dX
     dec bl
     jnz mmn353
     mov bl,1
     dec cx
mmn354:INT 10H
     inc dX
     dec bl
     jnz mmn354    
     mov bl,2
     dec cx
mmn355:INT 10H
     inc dX
     dec bl
     jnz mmn355     
     mov bl,2
     dec cx
mmn356:INT 10H
     inc dX
     dec bl
     jnz mmn356   
     mov bl,2
     dec cx
mmn357:INT 10H
     inc dX
     dec bl
     jnz mmn357
     dec cx
     CMP dx,390
     JB bacc351
     jmp start5
nexc36:cmp cl,36h
     je mm36
     jmp nexc37
mm36: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc361:mov bl,1
mmn361:INT 10H
     inc dX
     dec bl
     jnz mmn361  
     mov bl,2
     dec cx
mmn362:INT 10H
     inc dX
     dec bl
     jnz mmn362
     mov bl,1
     dec cx
mmn363:INT 10H
     inc dX
     dec bl
     jnz mmn363
     mov bl,2
     dec cx
mmn364:INT 10H
     inc dX
     dec bl
     jnz mmn364    
     mov bl,1
     dec cx
mmn365:INT 10H
     inc dX
     dec bl
     jnz mmn365     
     mov bl,2
     dec cx
mmn366:INT 10H
     inc dX
     dec bl
     jnz mmn366   
     mov bl,1
     dec cx
mmn367:INT 10H
     inc dX
     dec bl
     jnz mmn367
     dec cx
     CMP dx, 387
     JB bacc361
     jmp start5
nexc37:cmp cl,37h
     je mm37
     jmp nexc38
mm37: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc371:mov bl,1
mmn371:INT 10H
     inc dX
     dec bl
     jnz mmn371  
     mov bl,1
     dec cx
mmn372:INT 10H
     inc dX
     dec bl
     jnz mmn372
     mov bl,1
     dec cx
mmn373:INT 10H
     inc dX
     dec bl
     jnz mmn373
     mov bl,1
     dec cx
mmn374:INT 10H
     inc dX
     dec bl
     jnz mmn374    
     mov bl,2
     dec cx
mmn375:INT 10H
     inc dX
     dec bl
     jnz mmn375     
     mov bl,1
     dec cx
mmn376:INT 10H
     inc dX
     dec bl
     jnz mmn376   
     mov bl,1
     dec cx
mmn377:INT 10H
     inc dX
     dec bl
     jnz mmn377
     mov bl,1
     dec cx
mmn378:INT 10H
     inc dX
     dec bl
     jnz mmn378
     dec cx
     CMP dx, 375
     JB bacc371
     jmp start5
nexc38:cmp cl,38h
     je mm38
     jmp nexc39
mm38: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc381:mov bl,1
mmn381:INT 10H
     dec cX
     dec bl
     jnz mmn381  
     mov bl,1
     inc dx
mmn382:INT 10H
     dec cX
     dec bl
     jnz mmn382
     mov bl,1
     inc dx
mmn383:INT 10H
     dec cX
     dec bl
     jnz mmn383
     mov bl,1
     inc dx
mmn384:INT 10H
     dec cX
     dec bl
     jnz mmn384    
     mov bl,2
     inc dx
mmn385:INT 10H
     dec cX
     dec bl
     jnz mmn385     
     mov bl,1
     inc dx
mmn386:INT 10H
     dec cX
     dec bl
     jnz mmn386   
     mov bl,1
     inc dx
mmn387:INT 10H
     dec cX
     dec bl
     jnz mmn387
     mov bl,1
     inc dx
mmn388:INT 10H
     dec cX
     dec bl
     jnz mmn388
     mov bl,1
     inc dx
mmn389:INT 10H
     dec cX
     dec bl
     jnz mmn389
     inc dx
     CMP dx, 361
     JB bacc381
     jmp start5
nexc39:cmp cl,39h
     je mm39
     jmp nexc40
mm39: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc391:mov bl,2
mmn391:INT 10H
     dec cX
     dec bl
     jnz mmn391
     mov bl,1
     inc dx
mmn392:INT 10H
     dec cX
     dec bl
     jnz mmn392
     mov bl,2
     inc dx
mmn393:INT 10H
     dec cX
     dec bl
     jnz mmn393
     mov bl,1
     inc dx
mmn394:INT 10H
     dec cX
     dec bl
     jnz mmn394    
     mov bl,1
     inc dx
mmn395:INT 10H
     dec cX
     dec bl
     jnz mmn395
     inc dx
     CMP dx, 345
     JB bacc391
     jmp start5
nexc40:cmp cl,40h
     je mm40
     jmp nexc41
mm40: MOV CX, 160
     MOV DX, 329
     MOV AX, 0C00H
bacc401:mov bl,2
mmn401:INT 10H
     inc cX
     dec bl
     jnz mmn401
     mov bl,1
     dec dx
mmn402:INT 10H
     inc cX
     dec bl
     jnz mmn402
     mov bl,2
     dec dx
mmn403:INT 10H
     inc cX
     dec bl
     jnz mmn403
     mov bl,2
     dec dx
mmn404:INT 10H
     inc cX
     dec bl
     jnz mmn404    
     dec dx
     CMP cx, 320
     JB bacc401
     jmp start5
nexc41:cmp cl,41h
     je mm41
     jmp nexc42
mm41: MOV CX, 148
     MOV DX, 311
     MOV AX, 0C00H
bacc411:mov bl,3
mmn411:INT 10H
     inc cX
     dec bl
     jnz mmn411
     mov bl,2
     dec dx
mmn412:INT 10H
     inc cX
     dec bl
     jnz mmn412      
     mov bl,2
     dec dx
mmn413:INT 10H
     inc cX
     dec bl
     jnz mmn413
     dec dx
     CMP cx, 320
     JB bacc411
     jmp start5
nexc42:cmp cl,42h
     je mm42
     jmp nexc43
mm42: MOV CX, 141
     MOV DX, 293
     MOV AX, 0C00H
bacc421:mov bl,3
mmn421:INT 10H
     inc cX
     dec bl
     jnz mmn421
     mov bl,3
     dec dx
mmn422:INT 10H
     inc cX
     dec bl
     jnz mmn422      
     mov bl,4
     dec dx
mmn423:INT 10H
     inc cX
     dec bl
     jnz mmn423 
     dec dx
     CMP cx, 320
     JB bacc421
     jmp start5
nexc43:cmp cl,43h
     je mm43
     jmp nexc44
mm43: MOV CX, 136
     MOV DX, 274
     MOV AX, 0C00H
bacc431:mov bl,5
mmn431:INT 10H
     inc cX
     dec bl
     jnz mmn431
     mov bl,6
     dec dx
mmn432:INT 10H
     inc cX
     dec bl
     jnz mmn432    
     dec dx
     CMP cx, 320
     JB bacc431
     jmp start5
nexc44:cmp cl,44h
     je mm44
     jmp nexc45
mm44: MOV CX, 133
     MOV DX, 255
     MOV AX, 0C00H
bacc441:mov bl,12
mmn441:INT 10H
     inc cX
     dec bl
     jnz mmn441
     dec dx
     CMP cx, 320
     JB bacc441
     jmp start5
nexc45:cmp cl,45h
     je mm45
     jmp nexc46
mm45: MOV CX, 133
     MOV DX, 240
     MOV AX, 0C00H
 hmm9:INT 10H
     INC CX
     CMP CX, 320
     JB hmm9
     jmp start5
nexc46:cmp cl,46h
     je mm46
     jmp nexc47
mm46: MOV CX, 133
     MOV DX, 225
     MOV AX, 0C00H
bacc461:mov bl,12
mmn461:INT 10H
     inc cX
     dec bl
     jnz mmn461
     inc dx
     CMP dx, 240
     JB bacc461
     jmp start5
nexc47:cmp cl,47h
     je mm47
     jmp nexc48
mm47: MOV CX, 136
     MOV DX, 206
     MOV AX, 0C00H
bacc471:mov bl,5
mmn471:INT 10H
     inc cX
     dec bl
     jnz mmn471
     mov bl,6
     inc dx
mmn472:INT 10H
     inc cX
     dec bl
     jnz mmn472    
     inc dx
     CMP dx, 240
     JB bacc471
     jmp start5
nexc48:cmp cl,48h
     je mm48
     jmp nexc49
mm48: MOV CX, 141
     MOV DX, 187
     MOV AX, 0C00H
bacc481:mov bl,3
mmn481:INT 10H
     inc cX
     dec bl
     jnz mmn481
     mov bl,3
     inc dx
mmn482:INT 10H
     inc cX
     dec bl
     jnz mmn482      
     mov bl,4
     inc dx
mmn483:INT 10H
     inc cX
     dec bl
     jnz mmn483 
     inc dx
     CMP dx, 240
     JB bacc481
     jmp start5
nexc49:cmp cl,49h
     je mm49
     jmp nexc50
mm49: MOV CX, 148
     MOV DX, 169
     MOV AX, 0C00H
bacc491:mov bl,3
mmn491:INT 10H
     inc cX
     dec bl
     jnz mmn491
     mov bl,2
     inc dx
mmn492:INT 10H
     inc cX
     dec bl
     jnz mmn492      
     mov bl,2
     inc dx
mmn493:INT 10H
     inc cX
     dec bl
     jnz mmn493
     inc dx
     CMP dx, 240
     JB bacc491
     jmp start5
nexc50:cmp cl,50h
     je mm50
     jmp nexc51
mm50: MOV CX, 160
     MOV DX, 151
     MOV AX, 0C00H
bacc501:mov bl,2
mmn501:INT 10H
     inc cX
     dec bl
     jnz mmn501
     mov bl,1
     inc dx
mmn502:INT 10H
     inc cX
     dec bl
     jnz mmn502
     mov bl,2
     inc dx
mmn503:INT 10H
     inc cX
     dec bl
     jnz mmn503
     mov bl,2
     inc dx
mmn504:INT 10H
     inc cX
     dec bl
     jnz mmn504    
     inc dx
     CMP dx, 240
     JB bacc501
     jmp start5
nexc51:cmp cl,51h
     je mm51
     jmp nexc52
mm51: MOV CX, 173
     MOV DX, 135
     MOV AX, 0C00H
bacc511:mov bl,2
mmn511:INT 10H
     inc cX
     dec bl
     jnz mmn511
     mov bl,1
     inc dx
mmn512:INT 10H
     inc cX
     dec bl
     jnz mmn512
     mov bl,2
     inc dx
mmn513:INT 10H
     inc cX
     dec bl
     jnz mmn513
     mov bl,1
     inc dx
mmn514:INT 10H
     inc cX
     dec bl
     jnz mmn514
     mov bl,1
     inc dx
mmn515:INT 10H
     inc cX
     dec bl
     jnz mmn515
     inc dx
     CMP dx, 240
     JB bacc511
     jmp start5
nexc52:cmp cl,52h
     je mm52
     jmp nexc53
mm52: MOV CX, 186
     MOV DX, 119
     MOV AX, 0C00H
bacc521:mov bl,1
mmn521:INT 10H
     inc cX
     dec bl
     jnz mmn521  
     mov bl,1
     inc dx
mmn522:INT 10H
     inc cX
     dec bl
     jnz mmn522
     mov bl,1
     inc dx
mmn523:INT 10H
     inc cX
     dec bl
     jnz mmn523
     mov bl,1
     inc dx
mmn524:INT 10H
     inc cX
     dec bl
     jnz mmn524    
     mov bl,2
     inc dx
mmn525:INT 10H
     inc cX
     dec bl
     jnz mmn525     
     mov bl,1
     inc dx
mmn526:INT 10H
     inc cX
     dec bl
     jnz mmn526   
     mov bl,1
     inc dx
mmn527:INT 10H
     inc cX
     dec bl
     jnz mmn527
     mov bl,1
     inc dx
mmn528:INT 10H
     inc cX
     dec bl
     jnz mmn528
     mov bl,1
     inc dx
mmn529:INT 10H
     inc cX
     dec bl
     jnz mmn529
     inc dx
     CMP dx, 240
     JB bacc521
     jmp start5
nexc53:cmp cl,53h
     je mm53
     jmp nexc54
mm53: MOV CX, 201
     MOV DX, 105
     MOV AX, 0C00H
bacc531:mov bl,1
mmn531:INT 10H
     inc dX
     dec bl
     jnz mmn531  
     mov bl,1
     inc cx
mmn532:INT 10H
     inc dX
     dec bl
     jnz mmn532
     mov bl,1
     inc cx
mmn533:INT 10H
     inc dX
     dec bl
     jnz mmn533
     mov bl,1
     inc cx
mmn534:INT 10H
     inc dX
     dec bl
     jnz mmn534    
     mov bl,2
     inc cx
mmn535:INT 10H
     inc dX
     dec bl
     jnz mmn535     
     mov bl,1
     inc cx
mmn536:INT 10H
     inc dX
     dec bl
     jnz mmn536   
     mov bl,1
     inc cx
mmn537:INT 10H
     inc dX
     dec bl
     jnz mmn537
     mov bl,1
     inc cx
mmn538:INT 10H
     inc dX
     dec bl
     jnz mmn538
     inc cx
     CMP dx, 240
     JB bacc531
     jmp start5
nexc54:cmp cl,54h
     je mm54
     jmp nexc55
mm54: MOV CX, 219
     MOV DX, 93
     MOV AX, 0C00H
bacc541:mov bl,1
mmn541:INT 10H
     inc dX
     dec bl
     jnz mmn541  
     mov bl,2
     inc cx
mmn542:INT 10H
     inc dX
     dec bl
     jnz mmn542
     mov bl,1
     inc cx
mmn543:INT 10H
     inc dX
     dec bl
     jnz mmn543
     mov bl,2
     inc cx
mmn544:INT 10H
     inc dX
     dec bl
     jnz mmn544    
     mov bl,1
     inc cx
mmn545:INT 10H
     inc dX
     dec bl
     jnz mmn545     
     mov bl,2
     inc cx
mmn546:INT 10H
     inc dX
     dec bl
     jnz mmn546   
     mov bl,1
     inc cx
mmn547:INT 10H
     inc dX
     dec bl
     jnz mmn547
     inc cx
     CMP dx, 240
     JB bacc541
     jmp start5
nexc55:cmp cl,55h
     je mm55
     jmp nexc56
mm55: MOV CX, 236
     MOV DX, 82
     MOV AX, 0C00H
bacc551:mov bl,2
mmn551:INT 10H
     inc dX
     dec bl
     jnz mmn551  
     mov bl,2
     inc cx
mmn552:INT 10H
     inc dX
     dec bl
     jnz mmn552
     mov bl,2
     inc cx
mmn553:INT 10H
     inc dX
     dec bl
     jnz mmn553
     mov bl,1
     inc cx
mmn554:INT 10H
     inc dX
     dec bl
     jnz mmn554    
     mov bl,2
     inc cx
mmn555:INT 10H
     inc dX
     dec bl
     jnz mmn555     
     mov bl,2
     inc cx
mmn556:INT 10H
     inc dX
     dec bl
     jnz mmn556   
     mov bl,2
     inc cx
mmn557:INT 10H
     inc dX
     dec bl
     jnz mmn557
     inc cx
     CMP dx,240
     JB bacc551
     jmp start5
nexc56:cmp cl,56h
     je mm56
     jmp nexc57
mm56: MOV CX, 253
     MOV DX, 74
     MOV AX, 0C00H
bacc561:mov bl,3
mmn561:INT 10H
     inc DX
     dec bl
     jnz mmn561
     mov bl,2
     inc cx
mmn562:INT 10H
     inc DX
     dec bl
     jnz mmn562     
     inc cx
     CMP cx, 320
     JB bacc561
     jmp start5
nexc57:cmp cl,57h
     je mm57
     jmp nexc58
mm57: MOV CX, 271
     MOV DX, 68
     MOV AX, 0C00H
bacc571:mov bl,4
mmn571:INT 10H
     inc DX
     dec bl
     jnz mmn571
     mov bl,3
     inc cx
mmn572:INT 10H
     inc DX
     dec bl
     jnz mmn572
     inc cx
     CMP cx,320
     JB bacc571
     jmp start5
nexc58:cmp cl,58h
     je mm58
     jmp nexc59
mm58: MOV CX, 288
     MOV DX, 62
     MOV AX, 0C00H
bacc581:mov bl,5
mmn581:INT 10H
     inc DX
     dec bl
     jnz mmn581
     mov bl,6
     inc cx
mmn582:INT 10H
     inc DX
     dec bl
     jnz mmn582
     inc cx
     CMP cx, 320
     JB bacc581
     jmp start5
nexc59:cmp cl,59h
     je mm59
     jmp nexc60
mm59: MOV CX, 307
     MOV DX, 59
     MOV AX, 0C00H
bacc159:mov bl,14
mmn159:INT 10H
     inc DX
     dec bl
     jnz mmn159
     inc cx
     CMP cx, 320
     JB bacc159
     jmp start5
 
nexc60:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacc1:mov bl,14
mmn1:INT 10H
     deC DX
     dec bl
     jnz mmn1
     inc cx
     CMP cx, 333
     JB bacc1
     jmp start5
;;;;;;;;;;;;;;;;;;;;;;;
start5:mov ah,2h
     int 1ah
cmp ch,12h
jg subtract
jmp hours
subtract: sub ch,12h
hours:    cmp ch,1h
          je step5
          jmp stage2
step5:    cmp cl,11h
          jle hh5
          jmp step6
hh5:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq4:mov bl,3
hnq4:INT 10H
     deC DX
     dec bl
     jnz hnq4
     mov bl,2
     inc cx
hnq42:INT 10H
     deC DX
     dec bl
     jnz hnq42     
     inc cx
     CMP cx, 363
     JB bacq4
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac51:mov bl,2
hn51:INT 10H
     dec dX
     dec bl
     jnz hn51  
     mov bl,2
     inc cx
hn52:INT 10H
     dec dX
     dec bl
     jnz hn52
     mov bl,2
     inc cx
hn53:INT 10H
     dec dX
     dec bl
     jnz hn53
     mov bl,1
     inc cx
hn54:INT 10H
     dec dX
     dec bl
     jnz hn54    
     mov bl,2
     inc cx
hn55:INT 10H
     dec dX
     dec bl
     jnz hn55     
     mov bl,2
     inc cx
hn56:INT 10H
     dec dX
     dec bl
     jnz hn56   
     mov bl,2
     inc cx
hn57:INT 10H
     dec dX
     dec bl
     jnz hn57
     inc cx
     CMP cx,370
     JB bac51
     jmp minite    
step6:    cmp cl,23h
          jle hh6
          jmp step7
hh6:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq51:mov bl,2
hnq51:INT 10H
     dec dX
     dec bl
     jnz hnq51  
     mov bl,2
     inc cx
hnq52:INT 10H
     dec dX
     dec bl
     jnz hnq52
     mov bl,2
     inc cx
hnq53:INT 10H
     dec dX
     dec bl
     jnz hnq53
     mov bl,1
     inc cx
hnq54:INT 10H
     dec dX
     dec bl
     jnz hnq54    
     mov bl,2
     inc cx
hnq55:INT 10H
     dec dX
     dec bl
     jnz hnq55     
     mov bl,2
     inc cx
hnq56:INT 10H
     dec dX
     dec bl
     jnz hnq56   
     mov bl,2
     inc cx
hnq57:INT 10H
     dec dX
     dec bl
     jnz hnq57
     inc cx
     CMP cx,370
     JB bacq51
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac61:mov bl,1
hn61:INT 10H
     dec dX
     dec bl
     jnz hn61  
     mov bl,2
     inc cx
hn62:INT 10H
     dec dX
     dec bl
     jnz hn62
     mov bl,1
     inc cx
hn63:INT 10H
     dec dX
     dec bl
     jnz hn63
     mov bl,2
     inc cx
hn64:INT 10H
     dec dX
     dec bl
     jnz hn64    
     mov bl,1
     inc cx
hn65:INT 10H
     dec dX
     dec bl
     jnz hn65     
     mov bl,2
     inc cx
hn66:INT 10H
     dec dX
     dec bl
     jnz hn66   
     mov bl,1
     inc cx
hn67:INT 10H
     dec dX
     dec bl
     jnz hn67
     inc cx
     CMP cx,386
     JB bac61
     jmp minite
step7:    cmp cl,35h
          jle hh7
          jmp step8
hh7: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq61:mov bl,1
hnq61:INT 10H
     dec dX
     dec bl
     jnz hnq61  
     mov bl,2
     inc cx
hnq62:INT 10H
     dec dX
     dec bl
     jnz hnq62
     mov bl,1
     inc cx
hnq63:INT 10H
     dec dX
     dec bl
     jnz hnq63
     mov bl,2
     inc cx
hnq64:INT 10H
     dec dX
     dec bl
     jnz hnq64    
     mov bl,1
     inc cx
hnq65:INT 10H
     dec dX
     dec bl
     jnz hnq65     
     mov bl,2
     inc cx
hnq66:INT 10H
     dec dX
     dec bl
     jnz hnq66   
     mov bl,1
     inc cx
hnq67:INT 10H
     dec dX
     dec bl
     jnz hnq67
     inc cx
     CMP cx,386
     JB bacq61
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac71:mov bl,1
hn71:INT 10H
     dec dX
     dec bl
     jnz hn71  
     mov bl,1
     inc cx
hn72:INT 10H
     dec dX
     dec bl
     jnz hn72
     mov bl,1
     inc cx
hn73:INT 10H
     dec dX
     dec bl
     jnz hn73
     mov bl,1
     inc cx
hn74:INT 10H
     dec dX
     dec bl
     jnz hn74    
     mov bl,2
     inc cx
hn75:INT 10H
     dec dX
     dec bl
     jnz hn75     
     mov bl,1
     inc cx
hn76:INT 10H
     dec dX
     dec bl
     jnz hn76   
     mov bl,1
     inc cx
hn77:INT 10H
     dec dX
     dec bl
     jnz hn77
     mov bl,1
     inc cx
hn78:INT 10H
     dec dX
     dec bl
     jnz hn78
     inc cx
     CMP cx, 399
     JB bac71
     jmp minite
step8:    cmp cl,47h
          jle hh8
          jmp step9
hh8: MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq71:mov bl,1
hnq71:INT 10H
     dec dX
     dec bl
     jnz hnq71  
     mov bl,1
     inc cx
hnq72:INT 10H
     dec dX
     dec bl
     jnz hnq72
     mov bl,1
     inc cx
hnq73:INT 10H
     dec dX
     dec bl
     jnz hnq73
     mov bl,1
     inc cx
hnq74:INT 10H
     dec dX
     dec bl
     jnz hnq74    
     mov bl,2
     inc cx
hnq75:INT 10H
     dec dX
     dec bl
     jnz hnq75     
     mov bl,1
     inc cx
hnq76:INT 10H
     dec dX
     dec bl
     jnz hnq76   
     mov bl,1
     inc cx
hnq77:INT 10H
     dec dX
     dec bl
     jnz hnq77
     mov bl,1
     inc cx
hnq78:INT 10H
     dec dX
     dec bl
     jnz hnq78
     inc cx
     CMP cx, 399
     JB bacq71
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac81:mov bl,1
hn81:INT 10H
     inc cX
     dec bl
     jnz hn81  
     mov bl,1
     dec dx
hn82:INT 10H
     inc cX
     dec bl
     jnz hn82
     mov bl,1
     dec dx
hn83:INT 10H
     inc cX
     dec bl
     jnz hn83
     mov bl,1
     dec dx
hn84:INT 10H
     inc cX
     dec bl
     jnz hn84    
     mov bl,2
     dec dx
hn85:INT 10H
     inc cX
     dec bl
     jnz hn85     
     mov bl,1
     dec dx
hn86:INT 10H
     inc cX
     dec bl
     jnz hn86   
     mov bl,1
     dec dx
hn87:INT 10H
     inc cX
     dec bl
     jnz hn87
     mov bl,1
     dec dx
hn88:INT 10H
     inc cX
     dec bl
     jnz hn88
     mov bl,1
     dec dx
hn89:INT 10H
     inc cX
     dec bl
     jnz hn89
     dec dx
     CMP cx, 409
     JB bac81
     jmp minite
step9:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq81:mov bl,1
hnq81:INT 10H
     inc cX
     dec bl
     jnz hnq81  
     mov bl,1
     dec dx
hnq82:INT 10H
     inc cX
     dec bl
     jnz hnq82
     mov bl,1
     dec dx
hnq83:INT 10H
     inc cX
     dec bl
     jnz hnq83
     mov bl,1
     dec dx
hnq84:INT 10H
     inc cX
     dec bl
     jnz hnq84    
     mov bl,2
     dec dx
hnq85:INT 10H
     inc cX
     dec bl
     jnz hnq85     
     mov bl,1
     dec dx
hnq86:INT 10H
     inc cX
     dec bl
     jnz hnq86   
     mov bl,1
     dec dx
hnq87:INT 10H
     inc cX
     dec bl
     jnz hnq87
     mov bl,1
     dec dx
hnq88:INT 10H
     inc cX
     dec bl
     jnz hnq88
     mov bl,1
     dec dx
hnq89:INT 10H
     inc cX
     dec bl
     jnz hnq89
     dec dx
     CMP cx, 409
     JB bacq81
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac91:mov bl,2
hn91:INT 10H
     inc cX
     dec bl
     jnz hn91
     mov bl,1
     dec dx
hn92:INT 10H
     inc cX
     dec bl
     jnz hn92
     mov bl,2
     dec dx
hn93:INT 10H
     inc cX
     dec bl
     jnz hn93
     mov bl,1
     dec dx
hn94:INT 10H
     inc cX
     dec bl
     jnz hn94    
     mov bl,1
     dec dx
hn95:INT 10H
     inc cX
     dec bl
     jnz hn95
     dec dx
     CMP cx, 418
     JB bac91
     jmp minite
 
stage2:   cmp ch,2h
          je step10
          jmp stage3
 
step10:   cmp cl,11h
          jle hh10
          jmp step11
hh10:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq91:mov bl,2
hnq91:INT 10H
     inc cX
     dec bl
     jnz hnq91
     mov bl,1
     dec dx
hnq92:INT 10H
     inc cX
     dec bl
     jnz hnq92
     mov bl,2
     dec dx
hnq93:INT 10H
     inc cX
     dec bl
     jnz hnq93
     mov bl,1
     dec dx
hnq94:INT 10H
     inc cX
     dec bl
     jnz hnq94    
     mov bl,1
     dec dx
hnq95:INT 10H
     inc cX
     dec bl
     jnz hnq95
     dec dx
     CMP cx, 418
     JB bacq91
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac101:mov bl,2
hn101:INT 10H
     inc cX
     dec bl
     jnz hn101
     mov bl,1
     dec dx
hn102:INT 10H
     inC cX
     dec bl
     jnz hn102
     mov bl,2
     dec dx
hn103:INT 10H
     inC cX
     dec bl
     jnz hn103
     mov bl,2
     dec dx
hn104:INT 10H
     inC cX
     dec bl
     jnz hn104    
     dec dx
     CMP cx, 424
     JB bac101
     jmp minite
step11:   cmp cl,23h
          jle hh11
          jmp step12
hh11:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq101:mov bl,2
hnq101:INT 10H
     inc cX
     dec bl
     jnz hnq101
     mov bl,1
     dec dx
hnq102:INT 10H
     inC cX
     dec bl
     jnz hnq102
     mov bl,2
     dec dx
hnq103:INT 10H
     inC cX
     dec bl
     jnz hnq103
     mov bl,2
     dec dx
hnq104:INT 10H
     inC cX
     dec bl
     jnz hnq104    
     dec dx
     CMP cx, 424
     JB bacq101
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac111:mov bl,3
hn111:INT 10H
     inc cX
     dec bl
     jnz hn111
     mov bl,2
     dec dx
hn112:INT 10H
     inC cX
     dec bl
     jnz hn112      
     mov bl,2
     dec dx
hn113:INT 10H
     inC cX
     dec bl
     jnz hn113
     dec dx
     CMP cx, 430
     JB bac111
     jmp minite
step12:   cmp cl,35h
          jle hh12
          jmp step13
hh12:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq111:mov bl,3
hnq111:INT 10H
     inc cX
     dec bl
     jnz hnq111
     mov bl,2
     dec dx
hnq112:INT 10H
     inC cX
     dec bl
     jnz hnq112      
     mov bl,2
     dec dx
hnq113:INT 10H
     inC cX
     dec bl
     jnz hnq113
     dec dx
     CMP cx, 430
     JB bacq111
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac121:mov bl,3
hn121:INT 10H
     inc cX
     dec bl
     jnz hn121
     mov bl,3
     dec dx
hn122:INT 10H
     inC cX
     dec bl
     jnz hn122      
     mov bl,4
     dec dx
hn123:INT 10H
     inC cX
     dec bl
     jnz hn123 
     dec dx
     CMP cx, 434
     JB bac121
     jmp minite
step13:   cmp cl,47h
          jle hh13
          jmp step14
hh13:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq121:mov bl,3
hnq121:INT 10H
     inc cX
     dec bl
     jnz hnq121
     mov bl,3
     dec dx
hnq122:INT 10H
     inC cX
     dec bl
     jnz hnq122      
     mov bl,4
     dec dx
hnq123:INT 10H
     inC cX
     dec bl
     jnz hnq123 
     dec dx
     CMP cx, 434
     JB bacq121
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac131:mov bl,5
hn131:INT 10H
     inc cX
     dec bl
     jnz hn131
     mov bl,6
     dec dx
hn132:INT 10H
     inC cX
     dec bl
     jnz hn132    
     dec dx
     CMP cx, 439
     JB bac131
     jmp minite
step14:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq131:mov bl,5
hnq131:INT 10H
     inc cX
     dec bl
     jnz hnq131
     mov bl,6
     dec dx
hnq132:INT 10H
     inC cX
     dec bl
     jnz hnq132    
     dec dx
     CMP cx, 439
     JB bac131
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac141:mov bl,12
hn141:INT 10H
     inc cX
     dec bl
     jnz hn141
     dec dx
     CMP cx, 438
     JB bac141
     jmp minite
stage3:   cmp ch,3h
          je step15
          jmp stage4
step15:   cmp cl,11h
          jle hh15
          jmp step16
hh15:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq141:mov bl,12
hnq141:INT 10H
     inc cX
     dec bl
     jnz hnq141
     dec dx
     CMP cx, 438
     JB bacq141
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
 hn15:INT 10H
     INC CX
     CMP CX, 445
     JB hn15
     jmp minite
step16:   cmp cl,23h
          jle hh16
          jmp step17
hh16:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
 hnq15:INT 10H
     INC CX
     CMP CX, 445
     JB hnq15
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac161:mov bl,12
hn161:INT 10H
     inc cX
     dec bl
     jnz hn161
     inc dx
     CMP cx, 439
     JB bac161
     jmp minite
step17:   cmp cl,35h
          jle hh17
          jmp step18
hh17:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq161:mov bl,12
hnq161:INT 10H
     inc cX
     dec bl
     jnz hnq161
     inc dx
     CMP cx, 439
     JB bacq161
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac171:mov bl,5
hn171:INT 10H
     inc cX
     dec bl
     jnz hn171
     mov bl,6
     inc dx
hn172:INT 10H
     inc cX
     dec bl
     jnz hn172    
     inc dx
     CMP cx, 439
     JB bac171
     jmp minite
step18:   cmp cl,47h
          jle hh18
          jmp step19
 
hh18:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq171:mov bl,5
hnq171:INT 10H
     inc cX
     dec bl
     jnz hnq171
     mov bl,6
     inc dx
hnq172:INT 10H
     inc cX
     dec bl
     jnz hnq172    
     inc dx
     CMP cx, 439
     JB bacq171
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac181:mov bl,3
hn181:INT 10H
     inc cX
     dec bl
     jnz hn181
     mov bl,3
     inc dx
hn182:INT 10H
     inc cX
     dec bl
     jnz hn182      
     mov bl,4
     inc dx
hn183:INT 10H
     inc cX
     dec bl
     jnz hn183 
     inc dx
     CMP cx, 434
     JB bac181
     jmp minite
step19:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq181:mov bl,3
hnq181:INT 10H
     inc cX
     dec bl
     jnz hnq181
     mov bl,3
     inc dx
hnq182:INT 10H
     inc cX
     dec bl
     jnz hnq182      
     mov bl,4
     inc dx
hnq183:INT 10H
     inc cX
     dec bl
     jnz hnq183 
     inc dx
     CMP cx, 434
     JB bacq181
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac191:mov bl,3
hn191:INT 10H
     inc cX
     dec bl
     jnz hn191
     mov bl,2
     inc dx
hn192:INT 10H
     inc cX
     dec bl
     jnz hn192      
     mov bl,2
     inc dx
hn193:INT 10H
     inc cX
     dec bl
     jnz hn193
     inc dx
     CMP cx,430
     JB bac191
     jmp minite
stage4:   cmp ch,4h
          je step20
          jmp stage5
step20:   cmp cl,11h
          jle hh20
          jmp step21
hh20:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq191:mov bl,3
hnq191:INT 10H
     inc cX
     dec bl
     jnz hnq191
     mov bl,2
     inc dx
hnq192:INT 10H
     inc cX
     dec bl
     jnz hnq192      
     mov bl,2
     inc dx
hnq193:INT 10H
     inc cX
     dec bl
     jnz hnq193
     inc dx
     CMP cx,430
     JB bacq191
     MOV CX, 320
     MOV DX, 239
     MOV AX, 0C05H
bac201:mov bl,2
hn201:INT 10H
     inc cX
     dec bl
     jnz hn201
     mov bl,1
     inc dx
hn202:INT 10H
     inc cX
     dec bl
     jnz hn202
     mov bl,2
     inc dx
hn203:INT 10H
     inc cX
     dec bl
     jnz hn203
     mov bl,2
     inc dx
hn204:INT 10H
     inc cX
     dec bl
     jnz hn204    
     inc dx
     CMP cx, 424
     JB bac201
     jmp minite
step21:   cmp cl,23h
          jle hh21
          jmp step22
hh21:MOV CX, 320
     MOV DX, 239
     MOV AX, 0C00H
bacq201:mov bl,2
hnq201:INT 10H
     inc cX
     dec bl
     jnz hnq201
     mov bl,1
     inc dx
hnq202:INT 10H
     inc cX
     dec bl
     jnz hnq202
     mov bl,2
     inc dx
hnq203:INT 10H
     inc cX
     dec bl
     jnz hnq203
     mov bl,2
     inc dx
hnq204:INT 10H
     inc cX
     dec bl
     jnz hnq204    
     inc dx
     CMP cx, 424
     JB bacq201
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac211:mov bl,2
hn211:INT 10H
     inc cX
     dec bl
     jnz hn211
     mov bl,1
     inc dx
hn212:INT 10H
     inc cX
     dec bl
     jnz hn212
     mov bl,2
     inc dx
hn213:INT 10H
     inc cX
     dec bl
     jnz hn213
     mov bl,1
     inc dx
hn214:INT 10H
     inc cX
     dec bl
     jnz hn214    
     mov bl,1
     inc dx
hn215:INT 10H
     inc cX
     dec bl
     jnz hn215
     inc dx
     CMP cx, 418
     JB bac211
     jmp minite
step22:   cmp cl,35h
          jle hh22
          jmp step23
hh22:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq211:mov bl,2
hnq211:INT 10H
     inc cX
     dec bl
     jnz hnq211
     mov bl,1
     inc dx
hnq212:INT 10H
     inc cX
     dec bl
     jnz hnq212
     mov bl,2
     inc dx
hnq213:INT 10H
     inc cX
     dec bl
     jnz hnq213
     mov bl,1
     inc dx
hnq214:INT 10H
     inc cX
     dec bl
     jnz hnq214    
     mov bl,1
     inc dx
hnq215:INT 10H
     inc cX
     dec bl
     jnz hnq215
     inc dx
     CMP cx, 418
     JB bacq211
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac221:mov bl,1
hn221:INT 10H
     inc cX
     dec bl
     jnz hn221  
     mov bl,1
     inc dx
hn222:INT 10H
     inc cX
     dec bl
     jnz hn222
     mov bl,1
     inc dx
hn223:INT 10H
     inc cX
     dec bl
     jnz hn223
     mov bl,1
     inc dx
hn224:INT 10H
     inc cX
     dec bl
     jnz hn224    
     mov bl,2
     inc dx
hn225:INT 10H
     inc cX
     dec bl
     jnz hn225     
     mov bl,1
     inc dx
hn226:INT 10H
     inc cX
     dec bl
     jnz hn226   
     mov bl,1
     inc dx
hn227:INT 10H
     inc cX
     dec bl
     jnz hn227
     mov bl,1
     inc dx
hn228:INT 10H
     inc cX
     dec bl
     jnz hn228
     mov bl,1
     inc dx
hn229:INT 10H
     inc cX
     dec bl
     jnz hn229
     inc dx
     CMP cx, 409
     JB bac221
     jmp minite
step23:   cmp cl,47h
          jle hh23
          jmp step24
hh23:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq221:mov bl,1
hnq221:INT 10H
     inc cX
     dec bl
     jnz hnq221  
     mov bl,1
     inc dx
hnq222:INT 10H
     inc cX
     dec bl
     jnz hnq222
     mov bl,1
     inc dx
hnq223:INT 10H
     inc cX
     dec bl
     jnz hnq223
     mov bl,1
     inc dx
hnq224:INT 10H
     inc cX
     dec bl
     jnz hnq224    
     mov bl,2
     inc dx
hnq225:INT 10H
     inc cX
     dec bl
     jnz hnq225     
     mov bl,1
     inc dx
hnq226:INT 10H
     inc cX
     dec bl
     jnz hnq226   
     mov bl,1
     inc dx
hnq227:INT 10H
     inc cX
     dec bl
     jnz hnq227
     mov bl,1
     inc dx
hnq228:INT 10H
     inc cX
     dec bl
     jnz hnq228
     mov bl,1
     inc dx
hnq229:INT 10H
     inc cX
     dec bl
     jnz hnq229
     inc dx
     CMP cx, 409
     JB bacq221
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac231:mov bl,1
hn231:INT 10H
     inc dX
     dec bl
     jnz hn231  
     mov bl,1
     inc cx
hn232:INT 10H
     inc dX
     dec bl
     jnz hn232
     mov bl,1
     inc cx
hn233:INT 10H
     inc dX
     dec bl
     jnz hn233
     mov bl,1
     inc cx
hn234:INT 10H
     inc dX
     dec bl
     jnz hn234    
     mov bl,2
     inc cx
hn235:INT 10H
     inc dX
     dec bl
     jnz hn235     
     mov bl,1
     inc cx
hn236:INT 10H
     inc dX
     dec bl
     jnz hn236   
     mov bl,1
     inc cx
hn237:INT 10H
     inc dX
     dec bl
     jnz hn237
     mov bl,1
     inc cx
hn238:INT 10H
     inc dX
     dec bl
     jnz hn238
     inc cx
     CMP cx, 399
     JB bac231
     jmp minite
step24:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq231:mov bl,1
hnq231:INT 10H
     inc dX
     dec bl
     jnz hnq231  
     mov bl,1
     inc cx
hnq232:INT 10H
     inc dX
     dec bl
     jnz hnq232
     mov bl,1
     inc cx
hnq233:INT 10H
     inc dX
     dec bl
     jnz hnq233
     mov bl,1
     inc cx
hnq234:INT 10H
     inc dX
     dec bl
     jnz hnq234    
     mov bl,2
     inc cx
hnq235:INT 10H
     inc dX
     dec bl
     jnz hnq235     
     mov bl,1
     inc cx
hnq236:INT 10H
     inc dX
     dec bl
     jnz hnq236   
     mov bl,1
     inc cx
hnq237:INT 10H
     inc dX
     dec bl
     jnz hnq237
     mov bl,1
     inc cx
hnq238:INT 10H
     inc dX
     dec bl
     jnz hnq238
     inc cx
     CMP cx, 399
     JB bacq231
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac241:mov bl,1
hn241:INT 10H
     inc dX
     dec bl
     jnz hn241  
     mov bl,2
     inc cx
hn242:INT 10H
     inc dX
     dec bl
     jnz hn242
     mov bl,1
     inc cx
hn243:INT 10H
     inc dX
     dec bl
     jnz hn243
     mov bl,2
     inc cx
hn244:INT 10H
     inc dX
     dec bl
     jnz hn244    
     mov bl,1
     inc cx
hn245:INT 10H
     inc dX
     dec bl
     jnz hn245     
     mov bl,2
     inc cx
hn246:INT 10H
     inc dX
     dec bl
     jnz hn246   
     mov bl,1
     inc cx
hn247:INT 10H
     inc dX
     dec bl
     jnz hn247
     inc cx
     CMP cx, 386
     JB bac241
     jmp minite
stage5:   cmp ch,5h
          je step25
          jmp stage6
step25:   cmp cl,11h
          jle hh25
          jmp step26
hh25:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq241:mov bl,1
hnq241:INT 10H
     inc dX
     dec bl
     jnz hnq241  
     mov bl,2
     inc cx
hnq242:INT 10H
     inc dX
     dec bl
     jnz hnq242
     mov bl,1
     inc cx
hnq243:INT 10H
     inc dX
     dec bl
     jnz hnq243
     mov bl,2
     inc cx
hnq244:INT 10H
     inc dX
     dec bl
     jnz hnq244    
     mov bl,1
     inc cx
hnq245:INT 10H
     inc dX
     dec bl
     jnz hnq245     
     mov bl,2
     inc cx
hnq246:INT 10H
     inc dX
     dec bl
     jnz hnq246   
     mov bl,1
     inc cx
hnq247:INT 10H
     inc dX
     dec bl
     jnz hnq247
     inc cx
     CMP cx, 386
     JB bacq241
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac251:mov bl,2
hn251:INT 10H
     inc dX
     dec bl
     jnz hn251  
     mov bl,2
     inc cx
hn252:INT 10H
     inc dX
     dec bl
     jnz hn252
     mov bl,2
     inc cx
hn253:INT 10H
     inc dX
     dec bl
     jnz hn253
     mov bl,1
     inc cx
hn254:INT 10H
     inc dX
     dec bl
     jnz hn254    
     mov bl,2
     inc cx
hn255:INT 10H
     inc dX
     dec bl
     jnz hn255     
     mov bl,2
     inc cx
hn256:INT 10H
     inc dX
     dec bl
     jnz hn256   
     mov bl,2
     inc cx
hn257:INT 10H
     inc dX
     dec bl
     jnz hn257
     inc cx
     CMP cx, 370
     JB bac251
     jmp minite
step26:   cmp cl,23h
          jle hh26
          jmp step27
hh26:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq251:mov bl,2
hnq251:INT 10H
     inc dX
     dec bl
     jnz hnq251  
     mov bl,2
     inc cx
hnq252:INT 10H
     inc dX
     dec bl
     jnz hnq252
     mov bl,2
     inc cx
hnq253:INT 10H
     inc dX
     dec bl
     jnz hnq253
     mov bl,1
     inc cx
hnq254:INT 10H
     inc dX
     dec bl
     jnz hnq254    
     mov bl,2
     inc cx
hnq255:INT 10H
     inc dX
     dec bl
     jnz hnq255     
     mov bl,2
     inc cx
hnq256:INT 10H
     inc dX
     dec bl
     jnz hnq256   
     mov bl,2
     inc cx
hnq257:INT 10H
     inc dX
     dec bl
     jnz hnq257
     inc cx
     CMP cx, 370
     JB bacq251
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac261:mov bl,3
hn261:INT 10H
     inc DX
     dec bl
     jnz hn261
     mov bl,2
     inc cx
hn262:INT 10H
     inc DX
     dec bl
     jnz hn262     
     inc cx
     CMP cx, 363
     JB bac261
     jmp minite
step27:   cmp cl,35h
          jle hh27
          jmp step28
 
hh27:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq261:mov bl,3
hnq261:INT 10H
     inc DX
     dec bl
     jnz hnq261
     mov bl,2
     inc cx
hnq262:INT 10H
     inc DX
     dec bl
     jnz hnq262     
     inc cx
     CMP cx, 363
     JB bacq261
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac271:mov bl,4
hn271:INT 10H
     inc DX
     dec bl
     jnz hn271
     mov bl,3
     inc cx
hn272:INT 10H
     inc DX
     dec bl
     jnz hn272
     inc cx
     CMP cx,352
     JB bac271
     jmp minite
step28:   cmp cl,47h
          jle hh28
          jmp step29
hh28:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq271:mov bl,4
hnq271:INT 10H
     inc DX
     dec bl
     jnz hnq271
     mov bl,3
     inc cx
hnq272:INT 10H
     inc DX
     dec bl
     jnz hnq272
     inc cx
     CMP cx,352
     JB bacq271
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac281:mov bl,5
hn281:INT 10H
     inc DX
     dec bl
     jnz hn281
     mov bl,6
     inc cx
hn282:INT 10H
     inc DX
     dec bl
     jnz hn282
     inc cx
     CMP cx, 341
     JB bac281
     jmp minite
step29:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq281:mov bl,5
hnq281:INT 10H
     inc DX
     dec bl
     jnz hnq281
     mov bl,6
     inc cx
hnq282:INT 10H
     inc DX
     dec bl
     jnz hnq282
     inc cx
     CMP cx, 341
     JB bacq281
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac291:mov bl,14
hn291:INT 10H
     inc DX
     dec bl
     jnz hn291
     inc cx
     CMP cx, 329
     JB bac291
     jmp minite
stage6:   cmp ch,6h
          je step30
          jmp stage7
step30:   cmp cl,11h
          jle hh30
          jmp step31
 
hh30:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq291:mov bl,14
hnq291:INT 10H
     inc DX
     dec bl
     jnz hnq291
     inc cx
     CMP cx, 329
     JB bacq291
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C02H
 hn30:INT 10H
     INC DX
     CMP DX, 370
     JB hn30
     jmp minite
step31:   cmp cl,23h
          jle hh31
          jmp step32
hh31:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
 hnq30:INT 10H
     INC DX
     CMP DX, 370
     JB hnq30
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac311:mov bl,14
hn311:INT 10H
     inc DX
     dec bl
     jnz hn311
     dec cx
     CMP dx, 361
     JB bac311
     jmp minite
step32:   cmp cl,35h
          jle hh32
          jmp step33
hh32:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq311:mov bl,14
hnq311:INT 10H
     inc DX
     dec bl
     jnz hnq311
     dec cx
     CMP dx, 361
     JB bacq311
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac321:mov bl,5
hn321:INT 10H
     inc DX
     dec bl
     jnz hn321
     mov bl,6
     dec cx
hn322:int 10h
     inc DX
     dec bl
     jnz hn322
     dec cx
     CMP dx, 360
     JB bac321
     jmp minite
step33:   cmp cl,47h
          jle hh33
          jmp step34
hh33:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq321:mov bl,5
hnq321:INT 10H
     inc DX
     dec bl
     jnz hnq321
     mov bl,6
     dec cx
hnq322:int 10h
     inc DX
     dec bl
     jnz hnq322
     dec cx
     CMP dx, 360
     JB bacq321
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac331:mov bl,4
hn331:INT 10H
     inc DX
     dec bl
     jnz hn331
     mov bl,3
     dec cx
hn332:INT 10H
     inc DX
     dec bl
     jnz hn332
     dec cx
     CMP dx,355
     JB bac331
     jmp minite
step34:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq331:mov bl,4
hnq331:INT 10H
     inc DX
     dec bl
     jnz hnq331
     mov bl,3
     dec cx
hnq332:INT 10H
     inc DX
     dec bl
     jnz hnq332
     dec cx
     CMP dx,355
     JB bacq331
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac341:mov bl,3
hn341:INT 10H
     inc DX
     dec bl
     jnz hn341
     mov bl,2
     dec cx
hn342:INT 10H
     inc DX
     dec bl
     jnz hn342     
     dec cx
     CMP dx, 350
     JB bac341
     jmp minite
stage7:   cmp ch,7h
          je step35
          jmp stage8
step35:   cmp cl,11h
          jle hh35
          jmp step36
hh35:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq341:mov bl,3
hnq341:INT 10H
     inc DX
     dec bl
     jnz hnq341
     mov bl,2
     dec cx
hnq342:INT 10H
     inc DX
     dec bl
     jnz hnq342     
     dec cx
     CMP dx, 350
     JB bacq341
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac351:mov bl,2
hn351:INT 10H
     inc dX
     dec bl
     jnz hn351  
     mov bl,2
     dec cx
hn352:INT 10H
     inc dX
     dec bl
     jnz hn352
     mov bl,2
     dec cx
hn353:INT 10H
     inc dX
     dec bl
     jnz hn353
     mov bl,1
     dec cx
hn354:INT 10H
     inc dX
     dec bl
     jnz hn354    
     mov bl,2
     dec cx
hn355:INT 10H
     inc dX
     dec bl
     jnz hn355     
     mov bl,2
     dec cx
hn356:INT 10H
     inc dX
     dec bl
     jnz hn356   
     mov bl,2
     dec cx
hn357:INT 10H
     inc dX
     dec bl
     jnz hn357
     dec cx
     CMP dx,340
     JB bac351
     jmp minite
step36:   cmp cl,23h
          jle hh36
          jmp step37
hh36:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq351:mov bl,2
hnq351:INT 10H
     inc dX
     dec bl
     jnz hnq351  
     mov bl,2
     dec cx
hnq352:INT 10H
     inc dX
     dec bl
     jnz hnq352
     mov bl,2
     dec cx
hnq353:INT 10H
     inc dX
     dec bl
     jnz hnq353
     mov bl,1
     dec cx
hnq354:INT 10H
     inc dX
     dec bl
     jnz hnq354    
     mov bl,2
     dec cx
hnq355:INT 10H
     inc dX
     dec bl
     jnz hnq355     
     mov bl,2
     dec cx
hnq356:INT 10H
     inc dX
     dec bl
     jnz hnq356   
     mov bl,2
     dec cx
hnq357:INT 10H
     inc dX
     dec bl
     jnz hnq357
     dec cx
     CMP dx,340
     JB bacq351
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac361:mov bl,1
hn361:INT 10H
     inc dX
     dec bl
     jnz hn361  
     mov bl,2
     dec cx
hn362:INT 10H
     inc dX
     dec bl
     jnz hn362
     mov bl,1
     dec cx
hn363:INT 10H
     inc dX
     dec bl
     jnz hn363
     mov bl,2
     dec cx
hn364:INT 10H
     inc dX
     dec bl
     jnz hn364    
     mov bl,1
     dec cx
hn365:INT 10H
     inc dX
     dec bl
     jnz hn365     
     mov bl,2
     dec cx
hn366:INT 10H
     inc dX
     dec bl
     jnz hn366   
     mov bl,1
     dec cx
hn367:INT 10H
     inc dX
     dec bl
     jnz hn367
     dec cx
     CMP dx, 338
     JB bac361
     jmp minite
step37:   cmp cl,35h
          jle hh37
          jmp step38
hh37:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq361:mov bl,1
hnq361:INT 10H
     inc dX
     dec bl
     jnz hnq361  
     mov bl,2
     dec cx
hnq362:INT 10H
     inc dX
     dec bl
     jnz hnq362
     mov bl,1
     dec cx
hnq363:INT 10H
     inc dX
     dec bl
     jnz hnq363
     mov bl,2
     dec cx
hnq364:INT 10H
     inc dX
     dec bl
     jnz hnq364    
     mov bl,1
     dec cx
hnq365:INT 10H
     inc dX
     dec bl
     jnz hnq365     
     mov bl,2
     dec cx
hnq366:INT 10H
     inc dX
     dec bl
     jnz hnq366   
     mov bl,1
     dec cx
hnq367:INT 10H
     inc dX
     dec bl
     jnz hnq367
     dec cx
     CMP dx, 338
     JB bacq361
     MOV CX, 320
     MOV DX, 240
     MOV AX, 0C05H
bac371:mov bl,1
hn371:INT 10H
     inc dX
     dec bl
     jnz hn371  
     mov bl,1
     dec cx
hn372:INT 10H
     inc dX
     dec bl
     jnz hn372
     mov bl,1
     dec cx
hn373:INT 10H
     inc dX
     dec bl
     jnz hn373
     mov bl,1
     dec cx
hn374:INT 10H
     inc dX
     dec bl
     jnz hn374    
     mov bl,2
     dec cx
hn375:INT 10H
     inc dX
     dec bl
     jnz hn375     
     mov bl,1
     dec cx
hn376:INT 10H
     inc dX
     dec bl
     jnz hn376   
     mov bl,1
     dec cx
hn377:INT 10H
     inc dX
     dec bl
     jnz hn377
     mov bl,1
     dec cx
hn378:INT 10H
     inc dX
     dec bl
     jnz hn378
     dec cx
     CMP dx, 330
     JB bac371
     jmp minite
step38:   cmp cl,47h
          jle hh38
          jmp step39
hh38:MOV CX, 320
     MOV DX, 240
     MOV AX, 0C00H
bacq371:mov bl,1
hnq371:INT 10H
     inc dX
     dec bl
     jnz hnq371  
     mov bl,1
     dec cx
hnq372:INT 10H
     inc dX
     dec bl
     jnz hnq372
     mov bl,1
     dec cx
hnq373:INT 10H
     inc dX
     dec bl
     jnz h

What I am trying now is to reduce the number of lines. In the last code, I draw each pixal that is representing hour & minute. So, if I could implement bresenham correctly I would save more than 100KB. I worked hard I did my best, do you think I would ask for a help if I know the answer. If you can't give me the answer it's not hard to say I can't do it. At least, think with me about how could I implement it, give me some steps and I'll try. Regarding about the website you gave me I have read that before and didn't help me that much.
Thanks for helping me.

>>What I am trying now is to reduce the number of lines.
That doesn't mean you have a poor program. Pure assembly programs are typically very huge.

one way to do it is to write a small program in C that demonstrates the problem you are trying to resolve then have your compiler generate the assembly code (I know that all Microsoft compilers have that option). That way you can see how any given algorithm works.

Salem is correct -- programming in assembly is the hardest possible computer language (except programming in pure machine code). And that's why the really good assembly programmers will make more $$$$$. And its why not very many people do difficult tasks in assembly.

I guess no one here knows assembly.
Thanks for helping..

> However I am trying now to reduce the size of the code.
Use some functions then.
Or some arrays for all those points around the edge of the clock.

Some ideas
- array of 60 points for the outside tick marks
- array of 60 points for the inside tick marks
- array of 60 points for the second hand
- ditto minute hand
- ditto hour hand

A function which draws a line between any two points
- which in turn strips out some special cases (vertical lines) and orders points to call a simple bresenham.

A function to implement simple bresenham.

etc etc

> I guess no one here knows assembly.
Well there sure is a definite shortage of people willing to wade through 122K of someone else's UNCOMMENTED assembly code, which, as far as I can tell doesn't even contain one single function. It's all inline code and gotos.

It's obvious that you need to learn the mechanics of actually writing programs, like how to break a program down into manageable tasks. Copy/pasting the same block of code 60 times is surely going to bloat the code.

http://webster.cs.ucr.edu/

How about beginning with you posting the pseudo code for the whole program, showing how you would break the task down into manageable functions.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.