Lines Matching refs:ba
83 #define vgar(ba, reg) (*(((volatile unsigned char *)ba)+reg))
86 #define vgaw(ba, reg, val) \
87 *(((volatile unsigned char *)ba)+reg) = ((unsigned char)val)
265 #define WGfx(ba, idx, val) \
266 do { vgaw(ba, GCT_ADDRESS, idx); vgaw(ba, GCT_ADDRESS_W , val); } while (0)
268 #define WSeq(ba, idx, val) \
269 do { vgaw(ba, SEQ_ADDRESS, idx); vgaw(ba, SEQ_ADDRESS_W , val); } while (0)
271 #define WCrt(ba, idx, val) \
272 do { vgaw(ba, CRT_ADDRESS, idx); vgaw(ba, CRT_ADDRESS_W , val); } while (0)
274 #define WIma(ba, idx, val) \
275 do { vgaw(ba, IMA_ADDRESS, idx); vgaw(ba, IMA_ADDRESS_W , val); } while (0)
277 #define WAttr(ba, idx, val) \
279 if(vgar(ba, GREG_STATUS1_R)); \
280 vgaw(ba, ACT_ADDRESS_W, idx); \
281 vgaw(ba, ACT_ADDRESS_W, val); \
284 #define SetTextPlane(ba, m) \
286 WGfx(ba, GCT_ID_READ_MAP_SELECT, m & 3 ); \
287 WSeq(ba, SEQ_ID_MAP_MASK, (1 << (m & 3))); \
290 #define setMerlinDACmode(ba, mode) \
292 vgaw(ba, MERLIN_VDAC_DATA, mode | \
293 (vgar(ba, MERLIN_VDAC_DATA) & 0x0f)); \
302 static inline void RegWakeup(volatile void *ba) {
307 vgaw(ba, PASS_ADDRESS_W, 0x00);
310 vgaw(ba, PASS_ADDRESS_DOM, 0x00);
319 static inline void RegOnpass(volatile void *ba) {
326 vgaw(ba, PASS_ADDRESS_W, 0x00);
329 vgaw(ba, PASS_ADDRESS_DOMW, 0x00);
333 vgaw(ba, MERLIN_SWITCH_REG, Merlin_switch);
341 static inline void RegOffpass(volatile void *ba) {
348 vgaw(ba, PASS_ADDRESS_W, 0x01);
351 vgaw(ba, PASS_ADDRESS_DOM, 0x00);
355 vgaw(ba, MERLIN_SWITCH_REG, Merlin_switch);
362 static inline unsigned char RAttr(volatile void *ba, short idx) {
363 if(vgar(ba, GREG_STATUS1_R));
364 vgaw(ba, ACT_ADDRESS_W, idx);
365 return vgar (ba, ACT_ADDRESS_R);
368 static inline unsigned char RSeq(volatile void *ba, short idx) {
369 vgaw (ba, SEQ_ADDRESS, idx);
370 return vgar (ba, SEQ_ADDRESS_R);
373 static inline unsigned char RCrt(volatile void *ba, short idx) {
374 vgaw (ba, CRT_ADDRESS, idx);
375 return vgar (ba, CRT_ADDRESS_R);
378 static inline unsigned char RGfx(volatile void *ba, short idx) {
379 vgaw(ba, GCT_ADDRESS, idx);
380 return vgar (ba, GCT_ADDRESS_R);