From 9bb34eac8b89f624776ce6604c22d7c3097a1e24 Mon Sep 17 00:00:00 2001 From: bellard Date: Sun, 7 Nov 2004 22:54:14 +0000 Subject: [PATCH] CRTC register write protection fix git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1126 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/cirrus_vga.c | 2 +- pc-bios/vgabios-cirrus.bin | Bin 30852 -> 30868 bytes pc-bios/vgabios.bin | Bin 29673 -> 31533 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c index 9d80515196..7c34c57899 100644 --- a/hw/cirrus_vga.c +++ b/hw/cirrus_vga.c @@ -2689,7 +2689,7 @@ static void vga_ioport_write(void *opaque, uint32_t addr, uint32_t val) printf("vga: write CR%x = 0x%02x\n", s->cr_index, val); #endif /* handle CR0-7 protection */ - if ((s->cr[11] & 0x80) && s->cr_index <= 7) { + if ((s->cr[0x11] & 0x80) && s->cr_index <= 7) { /* can always write bit 4 of CR7 */ if (s->cr_index == 7) s->cr[7] = (s->cr[7] & ~0x10) | (val & 0x10); diff --git a/pc-bios/vgabios-cirrus.bin b/pc-bios/vgabios-cirrus.bin index 58572b643878056c94a609878eee2500e2cbd885..4e3c829545916e57a98d0816618dab106e9a436f 100644 GIT binary patch delta 2828 zcmZqq$T;OA;{<(Ha|OTrvWX@)>JJsXXffQu%y3rVMXlkBI|ZlbH2mQ&WqqL<^SY+t zk5nn^3y<{IMGb$rOIcq`4StbzH+Ap;DWM-vXtqFMLy9`#1bHC}n+- zp8DFg;kRKa>x&JkudN$?8fw{h+g@TcRm64H^iScGXBX&l; za<1khEHD2u|1aa~cH`-IVDKd1MIARt>?Lz=9A9v6oIo&KB6V`Ju`1)1$t#U58NW_` zY-}mJTcG)fz)Lgc-Z&wIvU+ilensZV^=1+rOJtglaJ*y$bL8^mK%9q6|I7IPmkD&a z2^l;IfSbO3a=(cbqs8P^CNhGGsvw0uO#jOS{+IE*V9}m@-9)#(Mz{G0-%B3GE;k;7 zCjk)cFPQZ}wtZ(n5o`quK0+1b(+8b_RP-4C=m2!{#Gw z-EKk#2Y7@!-GpANLdAn7dz<-)uo;2^a5uyMGM4{kVj#aV7)@SnCaWxI+hueo89Si|G92f##yoLz8-_Z#b zxHb8^xehv++q%RaoNzt#qdC<+mF|-|I2>tIKUk6;@aeNO9RHGlV?~e zF*Z%!ZE4KtH~GD#5~KEHAuD6X?~~oEOk{QlG6eiDd-LLyLGuw7gnp3F^2wc6hK!|? zcU$R7x`U*5C@=(o4YmaHK(~Uh@%-*HJr|7y@=2VGek)2^76M zjxqDmWMdc632a@dk;2;%Nm`AP6R~ z3M$|T6G(*$NWcWrpaSe5fyonHMJE5Y`K7?4+kAu#o_G%EfRooxxMvPc7PYH)Z~_T; zy8YV01&YOAFSe1rvLFf24XCtKTx3c5jrzwF=xnfT>J|Kx@CBK1`uQBdUmFZ=Q$7sTmu z`v$h;i$lPR7?42co7lslolkvyUgTz;vFip3$nvbx7y?OBgYk(+J$!w?+ut7T~dpalyM1X`k+&*`? zeFl}Qv6HJET!h3yf}L(Z;3?(vkd|ifF0+U174h)T;ycKIC1iNCj&;S$q$@ln4C2xZ*g261cHtLP!Kvhbm)n1kcdx2|vfaNfw|_SO zOCiAti_T>rl?G27I^7UiYbi*q)9pu>n}E&#Qo$WCw^vQ}a(&1sJXy!BgmK>Fg>Es7 z(Y!5d5iU^9>va3l<;G#~#MB)a%Oc|GMHja&Bk=DKgswO1B zsgd>X{{RT%&;NiIf}7VQPGS)ZNc)vyn3|E=ow_ddV(RBq(arv8p^S{ilb5EuGQOSs zI=zIkVsk=9G&}3roXt5OCm+Zctyj$5oa34+z{bkW#>&dTz>vn!!1RETpWy=oT!xF4 zm6d^!zYr`V!SIx!G7zPFA2qqBgWbWpix49fF3{a2?mJwih z$RL}yIma;%VNW_(hTn$a140UFQ33-43j;IAxTATSb6(~lj4J`lfQ*yO-<)GRc|w6` zFqoAuz{U#IT>&;2juf>=5NlKn2(V82X!t3!~C4ZIjblCD7efh zJNZnZ3TJ0wDf7PM!WXM1|18vCd^K6A$U>U2B09skDDZ#_v8h|<|>;DSNEJ)y#q>}0rNWF?+9~Uy(8Fh^$rH6 z)jKv%{#`7?Xgpb>B#5zib9Tu)P~1h8X)_+&+*X#&SZ`gNSe#mXqWDB{8JGmI2;q51 rDwh`TD?Wt8N7j3^_(bu^V(Sut($LbFvhvdPrJqV;%243sf(j7;$&r+q delta 2717 zcmbR8k+J0?;{<(HGX<~GoQWnk>Ngdx%`cudN$?8ftkLcnSzm_m4StovB_pXBX&l; zEUxAwEHD2u|1aa~cH`-IVDKd1MIkpx>?Lz=9A9v6oIo&KB4Tp0u`1*8$t#U58DC6( zY-}mJPN4aSz)Lgc-Z&wIvV3unensZV^=1+rQ)HTtaJ*y$bL8UWK%9q6|I7IPmkD&a z2^l;IfSbO2a=(cbqsHV_CNhG8svw0uO#jOS{+IE*_@XuWx`}Rmj&Ac2zLz|VU2Z%E zPXZv?UwqaD+4h|QMX*#4B=`tb@E=(4EW`gYj{jw1FBj%ThtIcGUIgOi-u)H?- zU&aF#7kKg0sQC!nYk7pg%gL|J`Wd4pSDQyFzcFe)!qVaPVMhl;zzzq7fETwR0`GTp zLIqAu{%)?r4>r~CK){X@%mFX{7)>^^=wd9Gyw^gOF=+B_3pp)gkha(AAQdN>174_r zxG;`5GKXujvZb0_gIehv6Jz2=gnDO~!H!Bl6eHae%*e1zk5)D9+wfE`De1755L#psTs%mFX@^<7*# z-2U$1X9xiEr-Ee|8YU-LOPMu+v~{`tHFyG%1VuGVmm3R+?+FbqPW|R1Z2!x??eKyM z2u%KCEpPTg4=ns16SK1iV3?TbgijuxoU7Ld^YvQIl&p#r-n2il0%_kx6X{A37# z$5Ay{1QtQ=pwy{S4{`)dCUR6(5b&ZLB(Q@UBAW%`bh)vCvo%OIa`Hnv9sYmXAe)k))^D0DV=pDNO1t?83&>zt zu(eJ0un(Bl1Pz`z zbh;t3(4xuquHua4lfzvfG73z#bSq(;J$ap54CCa<-0tO!$0j$s$1v`j{J>p;apUBl z?wX9Hla)Q(8ShWd_AnJ|R%|}P0eAXrB~Z~V%s9E#D}cTJXY&!B*BX=gJe3(IPx6jn z{4=@NQuPi^2`s4#KQk624;gs#7Uvk|A?!&9%kbMUd_YJ+ElOZuU}0be8MifWan8*= zgmEQc8IWYOY58=#8ux^k{Z2sb$#(ad# zKd5sV82WQ2=ggkWQFxh=ck-P=70$}SQs#ZZg)eqZ<}A`+{59FA$U^#Kd31(yQRrbC z{&JyU!`mH)FFw}mULRNyouNFrwaADS#M(4@Pf;hM>}0p%OvcrdHx!$zEG}H#b7J)l zD76R7>wLc>%yspSV8_)v7?@V?SUj1#M21m$vPMY|WAf(el6Q=Z%9FFov>7*Uo>rF4 zSg&0iSR7isqj*Pg8khvJ2;n{?l~aq?6>mb~BkSE-yrXz$v33bVscWfES$gUG(nqB} LWhiiRLxl(c=`UIT diff --git a/pc-bios/vgabios.bin b/pc-bios/vgabios.bin index 88e99f6cb1d1219758a7ddbef64773468a105da2..ed31b12b13d4027ac023b310aae95ce1072e81bc 100644 GIT binary patch delta 13342 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 U3@xA)Qu9)Z6*5wbQW;JI09_A^`v3p{ delta 11765 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%0DI?`k54_+rF{^Q zA3iTW{Mg8R`9+7@cb_h|A1wz;IJ?|_*f8<8b}}>{`2%K`ig&qvw_z+3=yLlGS`pLj z_UlFC(@wWvplR;gKV4j2eEHew_T>fVuTHm5-ELp3-G1@6a4_ufXX