Pregunta: | 64874 - COMO CORRER PROGRAMAS DE TURBO 7 EN WINDOWS7 EN MODO GRAFICO |
Autor: | Luis Lopez |
Tengo programas realizados en Turbo pascal 7.0 pero cuando los quiero ejecutar en windows XP, Vista ó Windows 7 este no funciona, solo funciona al principio en la parte de modo texto, al pasar a modo gráfico se bloquea o simplemente se interrumpe. Existe algun modo de hacer que estos programas funcionen en este modo grafico sobre windows7? |
Respuesta: | ramon |
[El archivo graph debe de estar en el directorio units y el egavga.bgi en
directorio bgi] [Esta en desarrollo Pero funciona ] [tienes el sistema gráfico trabajando en windows 7 sin problema] program pruefrec; uses graph, dos, crt; const dividen : real = 1.0; homio : array[1..8] of string[8] = ('00111100', '01111110', '11000011', '11000011', '11000011', '01100110', '00100100', '01100110'); Gray : FillPatternType = ($AA, $55, $AA, $55, $AA, $55, $AA, $55); fondo : array[0..1] of FillPatternType = ( ($AA, $55, $AA, $55, $AA, $55, $AA, $55), ($ff, $ff, $ff, $ff, $ff, $ff, $ff, $ff)); raton : array[1..17] of string[16] = ('1100000000000000', '1810000000000000', '1881000000000000', '1888100000000000', '1888810000000000', '1888881000000000', '1888888100000000', '1888888810000000', '1888888881000000', '1888881111100000', '1881881000000000', '1118188100000000', '1100188100000000', '0000018810000000', '0000018810000000', '0000001810000000', '0000001110000000'); Var balor1, balor2, total, conden, conden2 ,resit1, resit2 : real; pulsada : char; por, resul, dato : real; cuenta : string[16]; d, g, x, y : integer; yy, xr, yr, h, v : integer; sal : boolean; OldPattern : FillPatternType; driver, mode : integer; cursor : pointer; ocupa : word; texgraf : byte; regs : registers; esist : boolean; final, mouse, activo : boolean; procedure initmouse(como : byte); begin texgraf := como; regs.ax := $00; intr($33,regs); esist := regs.ax <> $00; if texgraf = 1 then if not mouse then mouse := true; end; function posx_raton : integer; begin regs.ax := $03; intr($33,regs); posx_raton := regs.cx; end; function posy_raton : integer; begin regs.ax := $03; intr($33,regs); posy_raton := regs.dx; end; procedure pon_posicion_raton(xg, yg : word); begin regs.ax := $04; regs.cx := xg; regs.dx := yg; intr($33,regs); end; function boton_raton : word; begin boton_raton := 0; regs.ah := $00; regs.al := $03; intr($33,regs); boton_raton := regs.bx end; function realstring(n : real) : string; var s : string[16]; begin fillchar(s,17,' '); s[0] := chr(16); str(n:10:10,s); realstring := s; end; function realstring2(n : real) : string; var s : string[16]; begin fillchar(s,17,' '); s[0] := chr(16); str(n:10:3,s); realstring2 := s; end; function stringint(s : string) : integer; var n : integer; error : integer; begin stringint := 0; val(s,n,error); stringint := n; end; procedure frecuencia2(herz : real); var sacafre : integer; begin dato := herz; resul := dividen / dato; cuenta := realstring(resul); sal := false; y := 0; x := 1; repeat if cuenta[x] = '0' then begin inc(y); end; if cuenta[x] > '0' then begin sal := true; end; inc(x); until (x > 16) or (sal = true); sacafre := 1; case y of 1 : begin sacafre := 7; por := 10; end; 2 : begin sacafre := 6; por := 100; end; 3 : begin sacafre := 5; por := 1000; end; 4 : begin sacafre := 4; por := 10000; end; 5 : begin sacafre := 3; por := 100000; end; 6,7,8,9 : begin sacafre := 2; por := 1000000; end; end; rectangle((getmaxx - 110) - 54,108,(getmaxx - 110) + 50,126); SetFillPattern(Gray, 3); bar((getmaxx - 110) - 53,109,(getmaxx - 110) + 49,125); SetFillPattern(Gray, 0); resul := resul * por; x := round(resul); if x < 1 then x := 2; g := 0; d := 0; for y := 1 to sacafre do begin case x of 1 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'-'); end; 2 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'--'); end; 3 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'---'); end; 4 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'----'); end; 5 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'-----'); end; 6 : begin outtextxy(((getmaxx - 110) - 50) + d * 8,110 + g * 8,'------'); end; end; d := d + x; inc(g); if g > 1 then begin g := 0; end; end; end; function intstring(n : integer) : string; var s : string[8]; begin fillchar(s,9,' '); s[0] := chr(8); str(n,s); intstring := s; end; function wordstring(n : word) : string; var s : string[15]; begin fillchar(s,16,' '); s[0] := chr(15); str(n,s); wordstring := s; end; function longntstring(n : longint) : string; var s : string[16]; begin fillchar(s,17,' '); s[0] := chr(16); str(n,s); longntstring := s; end; function stringreal(s : string) : real; var n : real; error : integer; begin stringreal := 0.1; val(s,n,error); stringreal := n; end; procedure SG3525A(xl, yl : integer); var li : integer; begin setcolor(15); rectangle(xl,yl,xl + 110,yl + 160); line(xl,yl + 10,xl - 20,yl + 10); outtextxy(xl + 8,yl + 6,'1'); line(xl,yl + 30,xl - 20,yl + 30); outtextxy(xl + 8,yl + 26,'2'); line(xl,yl + 50,xl - 20,yl + 50); outtextxy(xl + 8,yl + 46,'3'); line(xl,yl + 70,xl - 20,yl + 70); outtextxy(xl + 8,yl + 66,'4'); line(xl,yl + 90,xl - 20,yl + 90); outtextxy(xl + 8,yl + 86,'5'); line(xl,yl + 110,xl - 20,yl + 110); outtextxy(xl + 8,yl + 106,'6'); line(xl,yl + 130,xl - 20,yl + 130); outtextxy(xl + 8,yl + 126,'7'); line(xl,yl + 150,xl - 20,yl + 150); outtextxy(xl + 8,yl + 146,'8'); line(xl + 110,yl + 10,xl + 130,yl + 10); outtextxy(xl + 92,yl + 6,'16'); line(xl + 110,yl + 30,xl + 130,yl + 30); outtextxy(xl + 92,yl + 26,'15'); line(xl + 110,yl + 50,xl + 130,yl + 50); outtextxy(xl + 92,yl + 46,'14'); line(xl + 110,yl + 70,xl + 130,yl + 70); outtextxy(xl + 92,yl + 66,'13'); line(xl + 110,yl + 90,xl + 130,yl + 90); outtextxy(xl + 92,yl + 86,'12'); line(xl + 110,yl + 110,xl + 130,yl + 110); outtextxy(xl + 92,yl + 106,'11'); line(xl + 110,yl + 130,xl + 130,yl + 130); outtextxy(xl + 92,yl + 126,'10'); line(xl + 110,yl + 150,xl + 130,yl + 150); outtextxy(xl + 92,yl + 146,'9'); outtextxy(xl + 28,yl + 76,'SG3525A'); setcolor(11); rectangle(xl - 20,yl + 105,xl - 50,yl + 115); outtextxy(xl - 42,yl + 107,'RT'); line(xl - 50,yl + 110,xl - 70,yl + 110); line(xl - 70,yl + 110,xl - 70,yl + 120); line(xl - 80,yl + 120,xl - 60,yl + 120); line(xl - 20,yl + 90,xl - 100,yl + 90); line(xl - 100,yl + 90,xl - 100,yl + 150); line(xl - 110,yl + 150,xl - 90,yl + 150); line(xl - 110,yl + 160,xl - 90,yl + 160); line(xl - 100,yl + 160,xl - 100,yl + 180); line(xl - 90,yl + 180,xl - 110,yl + 180); outtextxy(xl - 130,yl + 152,'CT'); rectangle(xl - 20,yl + 125,xl - 50,yl + 135); outtextxy(xl - 42,yl + 127,'RD'); line(xl - 50,yl + 130,xl - 100,yl + 130); setcolor(15); end; procedure SG3524A(xl, yl : integer); var li : integer; begin setcolor(15); rectangle(xl,yl,xl + 110,yl + 160); line(xl,yl + 10,xl - 20,yl + 10); outtextxy(xl + 8,yl + 6,'1'); line(xl,yl + 30,xl - 20,yl + 30); outtextxy(xl + 8,yl + 26,'2'); line(xl,yl + 50,xl - 20,yl + 50); outtextxy(xl + 8,yl + 46,'3'); line(xl,yl + 70,xl - 20,yl + 70); outtextxy(xl + 8,yl + 66,'4'); line(xl,yl + 90,xl - 20,yl + 90); outtextxy(xl + 8,yl + 86,'5'); line(xl,yl + 110,xl - 20,yl + 110); outtextxy(xl + 8,yl + 106,'6'); line(xl,yl + 130,xl - 20,yl + 130); outtextxy(xl + 8,yl + 126,'7'); line(xl,yl + 150,xl - 20,yl + 150); outtextxy(xl + 8,yl + 146,'8'); line(xl + 110,yl + 10,xl + 130,yl + 10); outtextxy(xl + 92,yl + 6,'16'); line(xl + 110,yl + 30,xl + 130,yl + 30); outtextxy(xl + 92,yl + 26,'15'); line(xl + 110,yl + 50,xl + 130,yl + 50); outtextxy(xl + 92,yl + 46,'14'); line(xl + 110,yl + 70,xl + 130,yl + 70); outtextxy(xl + 92,yl + 66,'13'); line(xl + 110,yl + 90,xl + 130,yl + 90); outtextxy(xl + 92,yl + 86,'12'); line(xl + 110,yl + 110,xl + 130,yl + 110); outtextxy(xl + 92,yl + 106,'11'); line(xl + 110,yl + 130,xl + 130,yl + 130); outtextxy(xl + 92,yl + 126,'10'); line(xl + 110,yl + 150,xl + 130,yl + 150); outtextxy(xl + 92,yl + 146,'9'); outtextxy(xl + 28,yl + 76,'SG3524A'); setcolor(12); rectangle(xl - 30,yl + 105,xl - 60,yl + 115); outtextxy(xl - 52,yl + 107,'RT'); line(xl - 60,yl + 110,xl - 120,yl + 110); line(xl - 120,yl + 110,xl - 120,yl + 130); line(xl - 110,yl + 130,xl - 130,yl + 130); line(xl - 30,yl + 110,xl - 20,yl + 110); line(xl - 50,yl + 130,xl - 70,yl + 130); line(xl - 70,yl + 130,xl - 70,yl + 140); line(xl - 80,yl + 140,xl - 60,yl + 140); line(xl - 50,yl + 130,xl - 20,yl + 130); line(xl - 80,yl + 150,xl - 60,yl + 150); line(xl - 70,yl + 150,xl - 70,yl + 170); line(xl - 80,yl + 170,xl - 60,yl + 170); outtextxy(xl - 98,yl + 141,'CT'); setcolor(15); end; procedure LM494CN(xl, yl : integer); var li : integer; begin setcolor(15); rectangle(xl,yl,xl + 110,yl + 160); line(xl,yl + 10,xl - 20,yl + 10); outtextxy(xl + 8,yl + 6,'1'); line(xl,yl + 30,xl - 20,yl + 30); outtextxy(xl + 8,yl + 26,'2'); line(xl,yl + 50,xl - 20,yl + 50); outtextxy(xl + 8,yl + 46,'3'); line(xl,yl + 70,xl - 20,yl + 70); outtextxy(xl + 8,yl + 66,'4'); line(xl,yl + 90,xl - 20,yl + 90); outtextxy(xl + 8,yl + 86,'5'); line(xl,yl + 110,xl - 20,yl + 110); outtextxy(xl + 8,yl + 106,'6'); line(xl,yl + 130,xl - 20,yl + 130); outtextxy(xl + 8,yl + 126,'7'); line(xl,yl + 150,xl - 20,yl + 150); outtextxy(xl + 8,yl + 146,'8'); line(xl + 110,yl + 10,xl + 130,yl + 10); outtextxy(xl + 92,yl + 6,'16'); line(xl + 110,yl + 30,xl + 130,yl + 30); outtextxy(xl + 92,yl + 26,'15'); line(xl + 110,yl + 50,xl + 130,yl + 50); outtextxy(xl + 92,yl + 46,'14'); line(xl + 110,yl + 70,xl + 130,yl + 70); outtextxy(xl + 92,yl + 66,'13'); line(xl + 110,yl + 90,xl + 130,yl + 90); outtextxy(xl + 92,yl + 86,'12'); line(xl + 110,yl + 110,xl + 130,yl + 110); outtextxy(xl + 92,yl + 106,'11'); line(xl + 110,yl + 130,xl + 130,yl + 130); outtextxy(xl + 92,yl + 126,'10'); line(xl + 110,yl + 150,xl + 130,yl + 150); outtextxy(xl + 92,yl + 146,'9'); outtextxy(xl + 28,yl + 76,'LM494CN'); setcolor(13); rectangle(xl - 30,yl + 105,xl - 60,yl + 115); outtextxy(xl - 52,yl + 107,'RT'); line(xl - 60,yl + 110,xl - 90,yl + 110); line(xl - 30,yl + 110,xl - 20,yl + 110); line(xl - 90,yl + 110,xl - 90,yl + 130); line(xl - 80,yl + 130,xl - 100,yl + 130); line(xl - 130,yl + 90,xl - 20,yl + 90); line(xl - 130,yl + 90,xl - 130,yl + 120); line(xl - 140,yl + 120,xl - 120,yl + 120); line(xl - 140,yl + 130,xl - 120,yl + 130); outtextxy(xl - 160,yl + 122,'CT'); line(xl - 130,yl + 130,xl - 130,yl + 150); line(xl - 140,yl + 150,xl - 120,yl + 150); setcolor(15); end; procedure presentahomio(xo, yo : integer); var oo, mm : integer; begin for oo := 1 to 8 do for mm := 1 to 8 do begin if homio[oo][mm] = '1' then begin putpixel(xo + mm,yo + oo,15); end; end; end; procedure boton_menu(xm, ym, xxm, yym : integer; estado : boolean; fon : integer; titulo : string); var m1, m2 : integer; color3, color2 : byte; begin if estado = true then begin color2 := 7; color3 := 15; end else begin color2 := 15; color3 := 7; end; for m1 := 0 to 4 do begin setcolor(color2); line(xm + m1,ym + m1,xxm - m1,ym + m1); line(xm + m1,ym + m1,xm + m1,yym - m1); setcolor(color3); line(xxm - m1,ym + m1,xxm - m1,yym - m1); line(xm + m1,yym - m1,xxm - m1,yym - m1); end; setcolor(15); setfillpattern(fondo[1],fon); bar(xm + 5,ym + 5,xxm - 5,yym - 5); setfillpattern(fondo[1],0); setcolor(14); outtextxy(xm + 8,ym + 8,titulo); setcolor(15); end; function edita_entrada(xe, ye : integer) : real; var tecla : char; texto : string[15]; cont : integer; valor : word; begin edita_entrada := 0.0; setfillpattern(fondo[1],10); bar(xe,ye,xe + 8,ye + 8); cont := 1; fillchar(texto,16,' '); texto[0] := chr(15); repeat tecla := readkey; if tecla = #0 then valor := word(ord(readkey)) shl 8 else valor := ord(upcase(tecla)); if valor in [44,46,48..57] then begin setfillpattern(fondo[1],1); bar((xe - 8) + (cont * 8),ye,((xe - 8) + (cont * 8)) + 8,ye + 8); texto[0] := chr(cont); texto[cont] := tecla; outtextxy((xe - 8) + (cont * 8),ye,texto[cont]); inc(cont); if cont > 15 then begin cont := 15; end; setfillpattern(fondo[1],10); bar((xe - 8) + (cont * 8),ye,((xe - 8) + (cont * 8)) + 8,ye + 8); end; if valor = 8 then begin setfillpattern(fondo[1],1); bar((xe - 8) + (cont * 8),ye,((xe - 8) + (cont * 8)) + 8,ye + 8); dec(cont); if cont < 1 then begin cont := 1; end; texto[0] := chr(cont); texto[cont] := ' '; setfillpattern(fondo[1],1); bar((xe - 8) + (cont * 8),ye,((xe - 8) + (cont * 8)) + 8,ye + 8); end; until (valor = 13) or (valor = 27); edita_entrada := stringreal(texto); setfillpattern(fondo[1],1); bar((xe - 8) + (cont * 8),ye,((xe - 8) + (cont * 8)) + 8,ye + 8); end; procedure pantalla_menu; var d : integer; begin d := 1; repeat setcolor(15); line(1 + d,40 + d,(getmaxx - 8) - d,40 + d); line(1 + d,40 + d, 1 + d, (getmaxy - 2) - d); setcolor(7); line(1 + d,(getmaxy - 2) - d,(getmaxx - 8) - d,(getmaxy - 2) - d); line((getmaxx - 8) - d, 40 + d,(getmaxx - 8) - d,(getmaxy - 2) - d); inc(d); until d = 6; d := 1; repeat setcolor(7); line(1 + d,1 + d,(getmaxx - 8) - d,1 + d); line(1 + d,1 + d, 1 + d, 40 - d); setcolor(15); line(1 + d,40 - d,(getmaxx - 8) - d,40 - d); line((getmaxx - 8) - d,1 + d,(getmaxx - 8) - d,40 - d); inc(d); until d = 6; SetFillPattern(Gray, 10); bar(7,7,(getmaxx - 7) - 7,40 - 7); SetFillPattern(Gray, 0); setcolor(15); end; procedure initvga(s:string); Begin Driver := detect; InitGraph(Driver,Mode,s); if graphresult <> 0 then begin Writeln('ERROR GRAFICO : '); Halt(1); end; GetFillPattern(OldPattern); SetFillPattern(Gray, 0); end; procedure inicia_graficos; begin initvga('c: pgi'); for h := 1 to 17 do for v := 1 to 16 do begin if raton[h][v] = '1' then begin putpixel(110 + v,120 + h,7); end; if raton[h][v] = '8' then begin putpixel(110 + v,120 + h,15); end; end; ocupa := imagesize(110,120,110 + 16, 120 + 17); activo := false; if memavail > ocupa then begin getmem(cursor,ocupa); getimage(110,120,110 + 16, 120 + 17,cursor^); putimage(110,120,cursor^,xorput); activo := true; end; initmouse(1); pon_posicion_raton(110,120); xr := posx_raton; yr := posy_raton; putimage(xr,yr,cursor^,xorput); putimage(xr,yr,cursor^,xorput); end; begin inicia_graficos; putimage(xr,yr,cursor^,xorput); pantalla_menu; boton_menu(9,10,146,32,false,1,'Calculo SG3525A'); boton_menu(158,10,295,32,false,1,'Calculo SG3524A'); boton_menu(307,10,444,32,false,1,'Calculo LM494CN'); boton_menu(456,10,603,32,false,1,' SALIR '); setcolor(133); outtextxy(150,50,'** CALCULO DE FRECUENCIA DE SALIDA [PWM] **'); setcolor(15); final := false; repeat if (xr <> posx_raton) or (yr <> posy_raton) then begin putimage(xr,yr,cursor^,xorput); xr := posx_raton; yr := posy_raton; if xr > getmaxx - 12 then begin xr := getmaxx - 12; end; if yr > getmaxy - 2 then begin yr := getmaxy - 2; end; putimage(xr,yr,cursor^,xorput); end; if boton_raton = 1 then begin putimage(xr,yr,cursor^,xorput); case yr of 15..29 : begin case xr of 13..139 : begin setfillpattern(fondo[1],0); bar(7,56,getmaxx - 16,getmaxy - 9); resit1 := 0.0; resit2 := 0.0; conden := 0.0; conden2 := 0.0; balor1 := 0.0; balor1 := 0.0; total := 0.0; boton_menu(9,10,146,32,true,1,'Calculo SG3525A'); SG3525A(300,60); boton_menu(140,260,440,284,true,1,'ENTRE VALOR RT :'); boton_menu(140,288,440,312,true,1,'ENTRE VALOR RD :'); boton_menu(140,316,440,340,true,1,'ENTRE VALOR CT :'); setcolor(14); presentahomio(416,268); presentahomio(416,296); outtextxy(464 - 60,324,'nF'); outtextxy(110,345,'Resistencias en y Condensador en Nano Faradio'); presentahomio(231,343); outtextxy(110,355,'1nF = 0.001uF / 10nF = 0.01uF / 100nF = 0.1uF'); outtextxy(110,365,'1 = 0.001K / 10 = 0.01K / 100 = 0.1K '); presentahomio(116,363); presentahomio(197,363); presentahomio(248,363); presentahomio(326,363); presentahomio(382,363); presentahomio(454,363); setcolor(10); outtextxy(110,420,'RESULTADO = Khz'); setcolor(15); resit1 := edita_entrada(274,268); setfillpattern(fondo[1],1); bar(274,268,364 + 8,268 + 8); setcolor(14); outtextxy(255,268,realstring2(resit1)); setcolor(15); resit2 := edita_entrada(274,297); setfillpattern(fondo[1],1); bar(274,297,364 + 8,297 + 8); setcolor(14); outtextxy(255,297,realstring2(resit2)); setcolor(15); conden := edita_entrada(274,324); conden2 := conden * 0.000000001; setfillpattern(fondo[1],1); bar(274,324,364 + 8,324 + 8); setcolor(14); outtextxy(255,324,realstring2(conden)); setcolor(15); balor1 := (0.7 * resit1) + (resit2 * 3); balor2 := balor1 * conden2; total := 1/balor2; outtextxy(206,420,realstring2(total/1000)); frecuencia2(total); boton_menu(9,10,146,32,false,1,'Calculo SG3525A'); end; 162..288 : begin setfillpattern(fondo[1],0); bar(7,56,getmaxx - 16,getmaxy - 9); resit1 := 0.0; conden := 0.0; balor1 := 0.0; total := 0.0; boton_menu(158,10,295,32,true,1,'Calculo SG3524A'); SG3524A(300,60); boton_menu(140,260,440,284,true,1,'ENTRE VALOR RT :'); boton_menu(140,288,440,312,true,1,'ENTRE VALOR CT :'); setcolor(14); outtextxy(408,268,'K'); presentahomio(416,268); outtextxy(464 - 50,296,'uF'); outtextxy(110,345,'Resistencias en K y Condensador en uF'); outtextxy(110,355,'1nF = 0.001uF / 10nF = 0.01uF / 100nF = 0.1uF'); setcolor(10); outtextxy(110,420,'RESULTADO = Khz'); setcolor(15); resit1 := edita_entrada(274,268); setfillpattern(fondo[1],1); bar(274,268,364 + 8,268 + 8); setcolor(14); outtextxy(255,268,realstring2(resit1)); setcolor(15); conden := edita_entrada(274,297); setfillpattern(fondo[1],1); bar(274,297,364 + 8,297 + 8); setcolor(14); outtextxy(255,297,realstring2(conden)); setcolor(15); balor1 := (resit1 * conden); total := (1.8/balor1); outtextxy(206,420,realstring2(total)); frecuencia2(total); boton_menu(158,10,295,32,false,1,'Calculo SG3524A'); end; 312..439 : begin setfillpattern(fondo[1],0); bar(7,56,getmaxx - 16,getmaxy - 9); resit1 := 0.0; conden := 0.0; balor1 := 0.0; total := 0.0; boton_menu(307,10,444,32,true,1,'Calculo LM494CN'); LM494CN(300,60); boton_menu(140,260,440,284,true,1,'ENTRE VALOR RT :'); boton_menu(140,288,440,312,true,1,'ENTRE VALOR CT :'); setcolor(14); outtextxy(408,268,'K'); presentahomio(416,268); outtextxy(464 - 50,296,'uF'); outtextxy(110,345,'Resistencias en K y Condensador en uF'); outtextxy(110,355,'1nF = 0.001uF / 10nF = 0.01uF / 100nF = 0.1uF'); presentahomio(245,344); setcolor(10); outtextxy(110,420,'RESULTADO = Khz'); setcolor(15); resit1 := edita_entrada(274,268); setfillpattern(fondo[1],1); bar(274,268,364 + 8,268 + 8); setcolor(14); outtextxy(255,268,realstring2(resit1)); setcolor(15); conden := edita_entrada(274,297); setfillpattern(fondo[1],1); bar(274,297,364 + 8,297 + 8); setcolor(14); outtextxy(255,297,realstring2(conden)); setcolor(15); balor1 := ((resit1 * 2) * conden); total := (1/balor1); outtextxy(206,420,realstring2(total)); frecuencia2(total); boton_menu(307,10,444,32,false,1,'Calculo LM494CN'); end; 459..598 : begin boton_menu(456,10,603,32,true,1,' SALIR '); delay(300); final := true; boton_menu(456,10,603,32,false,1,' SALIR '); end; end; end; end; putimage(xr,yr,cursor^,xorput); end; if keypressed then pulsada := readkey; if pulsada <> #27 then begin pulsada := #0; end; until (final = true) or (pulsada = #27); closegraph; end. |