Lines Matching refs:cmd

370 fbnbitblt(fbp, cmd)  in fbnbitblt()  argument
372 register lBitblt *cmd;
379 int blttype = BLTTYPE(cmd->srcBitmap.type, cmd->destBitmap.type);
385 return(mfbnbitblt(fbp, cmd));
391 if (error = checkbitmap(&cmd->srcBitmap))
393 if (error = checkbitmap(&cmd->destBitmap))
395 if ((mode = checkdepth(&cmd->srcBitmap, &cmd->destBitmap)) < 0)
399 fbp->fb_bitblt = *cmd;
413 len = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
414 if (len * cmd->destBitmap.depth <= FB_MAX_IO) {
423 for (i = 0; i < cmd->destBitmap.depth; i++) {
441 len = cmd->srcBitmap.width * cmd->srcBitmap.rect.extent.y << 1;
443 if (len * cmd->srcBitmap.depth <= FB_MAX_IO) {
455 for (i = 0; i < cmd->srcBitmap.depth; i++)
458 if (i >= cmd->srcBitmap.depth)
466 for (i = 0; i < cmd->srcBitmap.depth; i++) {
477 lens = cmd->srcBitmap.width * cmd->srcBitmap.rect.extent.y << 1;
478 lend = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
479 if (lens * cmd->srcBitmap.depth <= FB_MAX_IO &&
480 lend * cmd->destBitmap.depth <= FB_MAX_IO) {
492 for (i = 0; i < cmd->srcBitmap.depth; i++)
495 if (i >= cmd->srcBitmap.depth)
502 for (i = 0; i < cmd->srcBitmap.depth; i++) {
515 for (i = 0; i < cmd->srcBitmap.depth; i++) {
534 fbbitblt(fbp, cmd)
536 register sBitblt *cmd; variable
543 lcmdp->func = cmd->func;
544 lcmdp->transp = cmd->transp;
545 lcmdp->fore_color = cmd->fore_color;
546 lcmdp->aux_color = cmd->aux_color;
547 lcmdp->planemask = cmd->planemask;
548 lcmdp->srcBitmap.type = cmd->srcBitmap.type;
549 lcmdp->srcBitmap.depth = cmd->srcBitmap.depth;
550 lcmdp->srcBitmap.width = cmd->srcBitmap.width;
551 lcmdp->srcBitmap.rect.origin.x = cmd->srcBitmap.rect.origin.x;
552 lcmdp->srcBitmap.rect.origin.y = cmd->srcBitmap.rect.origin.y;
553 lcmdp->srcBitmap.rect.extent.x = cmd->srcBitmap.rect.extent.x;
554 lcmdp->srcBitmap.rect.extent.y = cmd->srcBitmap.rect.extent.y;
555 lcmdp->srcBitmap.base = cmd->srcBitmap.base;
556 lcmdp->srcRect.origin.x = cmd->srcRect.origin.x;
557 lcmdp->srcRect.origin.y = cmd->srcRect.origin.y;
558 lcmdp->srcRect.extent.x = cmd->srcRect.extent.x;
559 lcmdp->srcRect.extent.y = cmd->srcRect.extent.y;
560 lcmdp->destBitmap.type = cmd->destBitmap.type;
561 lcmdp->destBitmap.depth = cmd->destBitmap.depth;
562 lcmdp->destBitmap.width = cmd->destBitmap.width;
563 lcmdp->destBitmap.rect.origin.x = cmd->destBitmap.rect.origin.x;
564 lcmdp->destBitmap.rect.origin.y = cmd->destBitmap.rect.origin.y;
565 lcmdp->destBitmap.rect.extent.x = cmd->destBitmap.rect.extent.x;
566 lcmdp->destBitmap.rect.extent.y = cmd->destBitmap.rect.extent.y;
567 lcmdp->destBitmap.base = cmd->destBitmap.base;
568 lcmdp->destClip.origin.x = cmd->destClip.origin.x;
569 lcmdp->destClip.origin.y = cmd->destClip.origin.y;
570 lcmdp->destClip.extent.x = cmd->destClip.extent.x;
571 lcmdp->destClip.extent.y = cmd->destClip.extent.y;
572 lcmdp->destPoint.x = cmd->destPoint.x;
573 lcmdp->destPoint.y = cmd->destPoint.y;
577 procbatchbitblt(fbp, mode, cmd)
580 register lBatchBitblt *cmd; variable
595 fbstart(fbp, cmd->nSrcDest);
602 len = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
603 if (len * cmd->destBitmap.depth <= FB_MAX_IO) {
612 for (i = 0; i < cmd->destBitmap.depth; i++) {
630 len = cmd->srcBitmap.width * cmd->srcBitmap.rect.extent.y << 1;
632 if (len * cmd->srcBitmap.depth <= FB_MAX_IO) {
644 for (i = 0; i < cmd->srcBitmap.depth; i++)
647 if (i >= cmd->srcBitmap.depth)
655 for (i = 0; i < cmd->srcBitmap.depth; i++) {
666 lens = cmd->srcBitmap.width * cmd->srcBitmap.rect.extent.y << 1;
667 lend = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
668 if (lens * cmd->srcBitmap.depth <= FB_MAX_IO &&
669 lend * cmd->destBitmap.depth <= FB_MAX_IO) {
681 for (i = 0; i < cmd->srcBitmap.depth; i++)
684 if (i >= cmd->srcBitmap.depth)
691 for (i = 0; i < cmd->srcBitmap.depth; i++) {
704 for (i = 0; i < cmd->srcBitmap.depth; i++) {
723 fbnbatchbitblt(fbp, cmd, seg) in fbnbatchbitblt() argument
725 register lBatchBitblt *cmd;
733 int blttype = BLTTYPE(cmd->srcBitmap.type, cmd->destBitmap.type);
738 return(mfbnbatchbitblt(fbp, cmd, seg));
745 fbp->fb_batchbitblt = *cmd;
747 if (error = checkbitmap(&cmd->srcBitmap))
749 if (error = checkbitmap(&cmd->destBitmap))
751 if ((mode = checkdepth(&cmd->srcBitmap, &cmd->destBitmap)) < 0)
755 if ((len = cmd->nSrcDest * sizeof(lSrcDest)) <= 0)
757 if (error = fblockmem((caddr_t)cmd->srcDestList,
761 error = procbatchbitblt(fbp, mode, cmd);
764 while(cmd->nSrcDest > 0) {
765 len = min(cmd->nSrcDest, (MAX_SIZE / sizeof(lSrcDest)));
766 error = COPYIN((caddr_t)cmd->srcDestList, (caddr_t)srcdestlist,
770 cmd->nSrcDest -= len;
771 cmd->srcDestList += len;
774 if (error = procbatchbitblt(fbp, mode, cmd))
781 fbbatchbitblt(fbp, cmd)
783 register sBatchBitblt *cmd; variable
794 lcmdp->func = cmd->func;
795 lcmdp->transp = cmd->transp;
796 lcmdp->fore_color = cmd->fore_color;
797 lcmdp->aux_color = cmd->aux_color;
798 lcmdp->planemask = cmd->planemask;
799 lcmdp->srcBitmap.type = cmd->srcBitmap.type;
800 lcmdp->srcBitmap.depth = cmd->srcBitmap.depth;
801 lcmdp->srcBitmap.width = cmd->srcBitmap.width;
802 lcmdp->srcBitmap.rect.origin.x = cmd->srcBitmap.rect.origin.x;
803 lcmdp->srcBitmap.rect.origin.y = cmd->srcBitmap.rect.origin.y;
804 lcmdp->srcBitmap.rect.extent.x = cmd->srcBitmap.rect.extent.x;
805 lcmdp->srcBitmap.rect.extent.y = cmd->srcBitmap.rect.extent.y;
806 lcmdp->srcBitmap.base = cmd->srcBitmap.base;
807 lcmdp->destBitmap.type = cmd->destBitmap.type;
808 lcmdp->destBitmap.depth = cmd->destBitmap.depth;
809 lcmdp->destBitmap.width = cmd->destBitmap.width;
810 lcmdp->destBitmap.rect.origin.x = cmd->destBitmap.rect.origin.x;
811 lcmdp->destBitmap.rect.origin.y = cmd->destBitmap.rect.origin.y;
812 lcmdp->destBitmap.rect.extent.x = cmd->destBitmap.rect.extent.x;
813 lcmdp->destBitmap.rect.extent.y = cmd->destBitmap.rect.extent.y;
814 lcmdp->destBitmap.base = cmd->destBitmap.base;
815 lcmdp->destClip.origin.x = cmd->destClip.origin.x;
816 lcmdp->destClip.origin.y = cmd->destClip.origin.y;
817 lcmdp->destClip.extent.x = cmd->destClip.extent.x;
818 lcmdp->destClip.extent.y = cmd->destClip.extent.y;
820 sp = (sSrcDest *)cmd->srcDestList;
821 while (cmd->nSrcDest) {
822 lcmdp->nSrcDest = ns = min(cmd->nSrcDest, 100);
823 cmd->nSrcDest -= ns;
845 fbntilebitblt(fbp, cmd) in fbntilebitblt() argument
847 register lTileBitblt *cmd;
855 int blttype = BLTTYPE(cmd->ptnBitmap.type, cmd->destBitmap.type);
861 return(mfbntilebitblt(fbp, cmd));
866 if (error = checkbitmap(&cmd->ptnBitmap))
868 if (error = checkbitmap(&cmd->destBitmap))
870 if ((mode = checkdepth(&cmd->ptnBitmap, &cmd->destBitmap)) < 0)
874 fbp->fb_tilebitblt = *cmd;
888 len = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
889 if (len * cmd->destBitmap.depth <= FB_MAX_IO) {
898 for (i = 0; i < cmd->destBitmap.depth; i++) {
916 len = cmd->ptnBitmap.width * cmd->ptnBitmap.rect.extent.y << 1;
918 if (len * cmd->ptnBitmap.depth <= FB_MAX_IO) {
930 for (i = 0; i < cmd->ptnBitmap.depth; i++)
933 if (i >= cmd->ptnBitmap.depth)
941 for (i = 0; i < cmd->ptnBitmap.depth; i++) {
952 lens = cmd->ptnBitmap.width * cmd->ptnBitmap.rect.extent.y << 1;
953 lend = cmd->destBitmap.width * cmd->destBitmap.rect.extent.y << 1;
954 if (lens * cmd->ptnBitmap.depth <= FB_MAX_IO &&
955 lend * cmd->destBitmap.depth <= FB_MAX_IO) {
967 for (i = 0; i < cmd->ptnBitmap.depth; i++)
970 if (i >= cmd->ptnBitmap.depth)
977 for (i = 0; i < cmd->ptnBitmap.depth; i++) {
988 for (i = 0; i < cmd->ptnBitmap.depth; i++) {
1006 fbtilebitblt(fbp, cmd)
1008 register sTileBitblt *cmd; variable
1015 lcmdp->func = cmd->func;
1016 lcmdp->transp = cmd->transp;
1017 lcmdp->fore_color = cmd->fore_color;
1018 lcmdp->aux_color = cmd->aux_color;
1019 lcmdp->planemask = cmd->planemask;
1020 lcmdp->ptnBitmap.type = cmd->ptnBitmap.type;
1021 lcmdp->ptnBitmap.depth = cmd->ptnBitmap.depth;
1022 lcmdp->ptnBitmap.width = cmd->ptnBitmap.width;
1023 lcmdp->ptnBitmap.rect.origin.x = cmd->ptnBitmap.rect.origin.x;
1024 lcmdp->ptnBitmap.rect.origin.y = cmd->ptnBitmap.rect.origin.y;
1025 lcmdp->ptnBitmap.rect.extent.x = cmd->ptnBitmap.rect.extent.x;
1026 lcmdp->ptnBitmap.rect.extent.y = cmd->ptnBitmap.rect.extent.y;
1027 lcmdp->ptnBitmap.base = cmd->ptnBitmap.base;
1028 lcmdp->ptnRect.origin.x = cmd->ptnRect.origin.x;
1029 lcmdp->ptnRect.origin.y = cmd->ptnRect.origin.y;
1030 lcmdp->ptnRect.extent.x = cmd->ptnRect.extent.x;
1031 lcmdp->ptnRect.extent.y = cmd->ptnRect.extent.y;
1032 lcmdp->refPoint.x = cmd->refPoint.x;
1033 lcmdp->refPoint.y = cmd->refPoint.y;
1034 lcmdp->destBitmap.type = cmd->destBitmap.type;
1035 lcmdp->destBitmap.depth = cmd->destBitmap.depth;
1036 lcmdp->destBitmap.width = cmd->destBitmap.width;
1037 lcmdp->destBitmap.rect.origin.x = cmd->destBitmap.rect.origin.x;
1038 lcmdp->destBitmap.rect.origin.y = cmd->destBitmap.rect.origin.y;
1039 lcmdp->destBitmap.rect.extent.x = cmd->destBitmap.rect.extent.x;
1040 lcmdp->destBitmap.rect.extent.y = cmd->destBitmap.rect.extent.y;
1041 lcmdp->destBitmap.base = cmd->destBitmap.base;
1042 lcmdp->destClip.origin.x = cmd->destClip.origin.x;
1043 lcmdp->destClip.origin.y = cmd->destClip.origin.y;
1044 lcmdp->destClip.extent.x = cmd->destClip.extent.x;
1045 lcmdp->destClip.extent.y = cmd->destClip.extent.y;
1046 lcmdp->destRect.origin.x = cmd->destRect.origin.x;
1047 lcmdp->destRect.origin.y = cmd->destRect.origin.y;
1048 lcmdp->destRect.extent.x = cmd->destRect.extent.x;
1049 lcmdp->destRect.extent.y = cmd->destRect.extent.y;
1054 fbbitblt3(fbp, cmd)
1056 sBitblt3 *cmd; variable
1062 fbnbitblt3(fbp, cmd)
1064 lBitblt3 *cmd; variable
1069 fbnpolyline(fbp, cmd, dj, seg)
1071 register lPrimLine *cmd; variable
1079 if(cmd->drawBM.type == BM_MEM) {
1080 return(mfbnpolyline(fbp, cmd, dj, seg));
1087 fbp->fb_polyline = *cmd;
1089 if ((cmd->np & 1) && dj)
1095 if ((len = cmd->np * sizeof(lPoint)) <= 0)
1097 error = fblockmem((caddr_t)cmd->plist, len, B_WRITE, fbmap + 1, seg);
1107 while (cmd->np > 0) {
1108 len = min(cmd->np, ((MAX_SIZE / sizeof(lPoint)) & ~1));
1110 if (error = COPYIN((caddr_t)cmd->plist, (caddr_t)srcdestlist,
1114 cmd->np -= len;
1115 cmd->plist += len;
1125 } else if (cmd->np)
1129 if (!dj && cmd->np) {
1130 cmd->np++;
1131 cmd->plist--;
1138 fbpolyline(fbp, cmd, dj)
1140 register sPrimLine *cmd; variable
1152 lcmdp->func = cmd->func;
1153 lcmdp->transp = cmd->transp;
1154 lcmdp->fore_color = cmd->fore_color;
1155 lcmdp->aux_color = cmd->aux_color;
1156 lcmdp->planemask = cmd->planemask;
1157 lcmdp->drawBM.type = cmd->drawBM.type;
1158 lcmdp->drawBM.depth = cmd->drawBM.depth;
1159 lcmdp->drawBM.width = cmd->drawBM.width;
1160 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1161 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1162 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1163 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1164 lcmdp->drawBM.base = cmd->drawBM.base;
1165 lcmdp->clip.origin.x = cmd->clip.origin.x;
1166 lcmdp->clip.origin.y = cmd->clip.origin.y;
1167 lcmdp->clip.extent.x = cmd->clip.extent.x;
1168 lcmdp->clip.extent.y = cmd->clip.extent.y;
1169 lcmdp->lptn = cmd->lptn;
1170 lcmdp->dlpf = cmd->dlpf;
1172 sp = (sPoint *)cmd->plist;
1173 while (cmd->np) {
1174 lcmdp->np = np = min(cmd->np, 100);
1175 cmd->np -= np;
1192 fbnfillscan(fbp, cmd, seg)
1194 register lPrimFill *cmd; variable
1201 int blttype = BLTTYPE(cmd->ptnBM.type, cmd->drawBM.type);
1206 return(mfbnfillscan(fbp, cmd, seg));
1213 fbp->fb_fillscan = *cmd;
1220 if ((len = cmd->nscan * sizeof(lScanl)) <= 0)
1222 if (error = fblockmem(cmd->scan, len, B_WRITE, fbmap + 2, seg))
1231 while (cmd->nscan > 0) {
1232 len = min(cmd->nscan, (MAX_SIZE / sizeof(lScanl)));
1234 if (error = COPYIN((caddr_t)cmd->scan, (caddr_t)srcdestlist,
1238 cmd->nscan -= len;
1239 cmd->scan += len;
1255 } else if (cmd->nscan)
1264 fbfillscan(fbp, cmd)
1266 register sPrimFill *cmd; variable
1276 lcmdp->func = cmd->func;
1277 lcmdp->transp = cmd->transp;
1278 lcmdp->fore_color = cmd->fore_color;
1279 lcmdp->aux_color = cmd->aux_color;
1280 lcmdp->planemask = cmd->planemask;
1281 lcmdp->refPoint.x = cmd->refPoint.x;
1282 lcmdp->refPoint.y = cmd->refPoint.y;
1283 lcmdp->ptnRect.origin.x = cmd->ptnRect.origin.x;
1284 lcmdp->ptnRect.origin.y = cmd->ptnRect.origin.y;
1285 lcmdp->ptnRect.extent.x = cmd->ptnRect.extent.x;
1286 lcmdp->ptnRect.extent.y = cmd->ptnRect.extent.y;
1287 lcmdp->ptnBM.type = cmd->ptnBM.type;
1288 lcmdp->ptnBM.depth = cmd->ptnBM.depth;
1289 lcmdp->ptnBM.width = cmd->ptnBM.width;
1290 lcmdp->ptnBM.rect.origin.x = cmd->ptnBM.rect.origin.x;
1291 lcmdp->ptnBM.rect.origin.y = cmd->ptnBM.rect.origin.y;
1292 lcmdp->ptnBM.rect.extent.x = cmd->ptnBM.rect.extent.x;
1293 lcmdp->ptnBM.rect.extent.y = cmd->ptnBM.rect.extent.y;
1294 lcmdp->ptnBM.base = cmd->ptnBM.base;
1295 lcmdp->drawBM.type = cmd->drawBM.type;
1296 lcmdp->drawBM.depth = cmd->drawBM.depth;
1297 lcmdp->drawBM.width = cmd->drawBM.width;
1298 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1299 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1300 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1301 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1302 lcmdp->drawBM.base = cmd->drawBM.base;
1303 lcmdp->clip.origin.x = cmd->clip.origin.x;
1304 lcmdp->clip.origin.y = cmd->clip.origin.y;
1305 lcmdp->clip.extent.x = cmd->clip.extent.x;
1306 lcmdp->clip.extent.y = cmd->clip.extent.y;
1308 sp = (sScanl *)cmd->scan;
1309 while (cmd->nscan) {
1310 lcmdp->nscan = ns = min(cmd->nscan, 100);
1311 cmd->nscan -= ns;
1329 fbnrectangle(fbp, cmd)
1331 register lPrimRect *cmd; variable
1336 int blttype = BLTTYPE(cmd->ptnBM.type, cmd->drawBM.type);
1341 return(mfbnrectangle(fbp, cmd));
1348 fbp->fb_rectangle = *cmd;
1367 fbrectangle(fbp, cmd)
1369 register sPrimRect *cmd; variable
1376 lcmdp->func = cmd->func;
1377 lcmdp->transp = cmd->transp;
1378 lcmdp->fore_color = cmd->fore_color;
1379 lcmdp->aux_color = cmd->aux_color;
1380 lcmdp->planemask = cmd->planemask;
1381 lcmdp->rect.origin.x = cmd->rect.origin.x;
1382 lcmdp->rect.origin.y = cmd->rect.origin.y;
1383 lcmdp->rect.extent.x = cmd->rect.extent.x;
1384 lcmdp->rect.extent.y = cmd->rect.extent.y;
1385 lcmdp->refPoint.x = cmd->refPoint.x;
1386 lcmdp->refPoint.y = cmd->refPoint.y;
1387 lcmdp->ptnRect.origin.x = cmd->ptnRect.origin.x;
1388 lcmdp->ptnRect.origin.y = cmd->ptnRect.origin.y;
1389 lcmdp->ptnRect.extent.x = cmd->ptnRect.extent.x;
1390 lcmdp->ptnRect.extent.y = cmd->ptnRect.extent.y;
1391 lcmdp->ptnBM.type = cmd->ptnBM.type;
1392 lcmdp->ptnBM.depth = cmd->ptnBM.depth;
1393 lcmdp->ptnBM.width = cmd->ptnBM.width;
1394 lcmdp->ptnBM.rect.origin.x = cmd->ptnBM.rect.origin.x;
1395 lcmdp->ptnBM.rect.origin.y = cmd->ptnBM.rect.origin.y;
1396 lcmdp->ptnBM.rect.extent.x = cmd->ptnBM.rect.extent.x;
1397 lcmdp->ptnBM.rect.extent.y = cmd->ptnBM.rect.extent.y;
1398 lcmdp->ptnBM.base = cmd->ptnBM.base;
1399 lcmdp->drawBM.type = cmd->drawBM.type;
1400 lcmdp->drawBM.depth = cmd->drawBM.depth;
1401 lcmdp->drawBM.width = cmd->drawBM.width;
1402 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1403 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1404 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1405 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1406 lcmdp->drawBM.base = cmd->drawBM.base;
1407 lcmdp->clip.origin.x = cmd->clip.origin.x;
1408 lcmdp->clip.origin.y = cmd->clip.origin.y;
1409 lcmdp->clip.extent.x = cmd->clip.extent.x;
1410 lcmdp->clip.extent.y = cmd->clip.extent.y;
1414 fbnpolymarker(fbp, cmd, seg) in fbnpolymarker() argument
1416 register lPrimMarker *cmd;
1423 int blttype = BLTTYPE(cmd->ptnBM.type, cmd->drawBM.type);
1428 return(mfbnpolymarker(fbp, cmd, seg));
1435 fbp->fb_polymarker = *cmd;
1442 if ((len = cmd->np * sizeof(lPoint)) <= 0)
1444 if (error = fblockmem(cmd->plist, len, B_WRITE, fbmap + 2, seg))
1453 while (cmd->np > 0) {
1454 len = min(cmd->np, (MAX_SIZE / sizeof(lPoint)));
1456 if (error = COPYIN((caddr_t)cmd->plist, (caddr_t)srcdestlist,
1460 cmd->np -= len;
1461 cmd->plist += len;
1478 } else if (cmd->np)
1487 fbpolymarker(fbp, cmd)
1489 register sPrimMarker *cmd; variable
1499 lcmdp->func = cmd->func;
1500 lcmdp->transp = cmd->transp;
1501 lcmdp->fore_color = cmd->fore_color;
1502 lcmdp->aux_color = cmd->aux_color;
1503 lcmdp->planemask = cmd->planemask;
1504 lcmdp->ptnRect.origin.x = cmd->ptnRect.origin.x;
1505 lcmdp->ptnRect.origin.y = cmd->ptnRect.origin.y;
1506 lcmdp->ptnRect.extent.x = cmd->ptnRect.extent.x;
1507 lcmdp->ptnRect.extent.y = cmd->ptnRect.extent.y;
1508 lcmdp->ptnBM.type = cmd->ptnBM.type;
1509 lcmdp->ptnBM.depth = cmd->ptnBM.depth;
1510 lcmdp->ptnBM.width = cmd->ptnBM.width;
1511 lcmdp->ptnBM.rect.origin.x = cmd->ptnBM.rect.origin.x;
1512 lcmdp->ptnBM.rect.origin.y = cmd->ptnBM.rect.origin.y;
1513 lcmdp->ptnBM.rect.extent.x = cmd->ptnBM.rect.extent.x;
1514 lcmdp->ptnBM.rect.extent.y = cmd->ptnBM.rect.extent.y;
1515 lcmdp->ptnBM.base = cmd->ptnBM.base;
1516 lcmdp->drawBM.type = cmd->drawBM.type;
1517 lcmdp->drawBM.depth = cmd->drawBM.depth;
1518 lcmdp->drawBM.width = cmd->drawBM.width;
1519 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1520 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1521 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1522 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1523 lcmdp->drawBM.base = cmd->drawBM.base;
1524 lcmdp->clip.origin.x = cmd->clip.origin.x;
1525 lcmdp->clip.origin.y = cmd->clip.origin.y;
1526 lcmdp->clip.extent.x = cmd->clip.extent.x;
1527 lcmdp->clip.extent.y = cmd->clip.extent.y;
1529 sp = (sPoint *)cmd->plist;
1530 while (cmd->np) {
1531 lcmdp->np = np = min(cmd->np, 100);
1532 cmd->np -= np;
1548 fbnpolydot(fbp, cmd, seg) in fbnpolydot() argument
1550 register lPrimDot *cmd;
1557 if (cmd->drawBM.type == BM_MEM)
1558 return (mfbnpolydot(fbp, cmd, seg));
1563 fbp->fb_polydot = *cmd;
1568 if ((len = cmd->np * sizeof(lPoint)) <= 0)
1570 if (error = fblockmem(cmd->plist, len, B_WRITE, fbmap + 2, seg))
1579 while (cmd->np > 0) {
1580 len = min(cmd->np, (MAX_SIZE / sizeof(lPoint)));
1582 if (error = COPYIN((caddr_t)cmd->plist, (caddr_t)srcdestlist,
1586 cmd->np -= len;
1587 cmd->plist += len;
1598 } else if (cmd->np)
1607 fbpolydot(fbp, cmd)
1609 register sPrimDot *cmd; variable
1619 lcmdp->func = cmd->func;
1620 lcmdp->transp = cmd->transp;
1621 lcmdp->fore_color = cmd->fore_color;
1622 lcmdp->aux_color = cmd->aux_color;
1623 lcmdp->planemask = cmd->planemask;
1624 lcmdp->drawBM.type = cmd->drawBM.type;
1625 lcmdp->drawBM.depth = cmd->drawBM.depth;
1626 lcmdp->drawBM.width = cmd->drawBM.width;
1627 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1628 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1629 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1630 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1631 lcmdp->drawBM.base = cmd->drawBM.base;
1632 lcmdp->clip.origin.x = cmd->clip.origin.x;
1633 lcmdp->clip.origin.y = cmd->clip.origin.y;
1634 lcmdp->clip.extent.x = cmd->clip.extent.x;
1635 lcmdp->clip.extent.y = cmd->clip.extent.y;
1637 sp = (sPoint *)cmd->plist;
1638 while (cmd->np) {
1639 lcmdp->np = np = min(cmd->np, 100);
1640 cmd->np -= np;
1656 fbntext(fbp, cmd) in fbntext() argument
1658 register lPrimText *cmd;
1663 int blttype = BLTTYPE(cmd->fontBM.type, cmd->drawBM.type);
1665 if ((cmd->type == ASCII) &&
1670 return(mfbntext(fbp, cmd));
1677 fbp->fb_text = *cmd;
1683 if (cmd->type == ASCII) {
1691 if (error = fblockmem(cmd->str, cmd->len, B_WRITE, fbmap + 2, UIO_USERSPACE))
1700 if (error = COPYIN((caddr_t)cmd->str,
1701 (caddr_t)srcdestlist, cmd->len, UIO_USERSPACE)) {
1706 (cmd->type == ASCII && fbp->fb_text.fontBM.type == BM_MEM)) {
1716 fbtext(fbp, cmd)
1718 register sPrimText *cmd; variable
1725 lcmdp->func = cmd->func;
1726 lcmdp->transp = cmd->transp;
1727 lcmdp->fore_color = cmd->fore_color;
1728 lcmdp->aux_color = cmd->aux_color;
1729 lcmdp->planemask = cmd->planemask;
1730 lcmdp->type = cmd->type;
1731 lcmdp->p.x = cmd->p.x;
1732 lcmdp->p.y = cmd->p.y;
1733 lcmdp->dx = cmd->dx;
1734 lcmdp->dy = cmd->dy;
1735 lcmdp->ex_factor = cmd->ex_factor;
1736 lcmdp->fp.x = cmd->fp.x;
1737 lcmdp->fp.y = cmd->fp.y;
1738 lcmdp->width = cmd->width;
1739 lcmdp->height = cmd->height;
1740 lcmdp->column = cmd->column;
1741 lcmdp->first_chr = cmd->first_chr;
1742 lcmdp->last_chr = cmd->last_chr;
1743 lcmdp->fontBM.type = cmd->fontBM.type;
1744 lcmdp->fontBM.depth = cmd->fontBM.depth;
1745 lcmdp->fontBM.width = cmd->fontBM.width;
1746 lcmdp->fontBM.rect.origin.x = cmd->fontBM.rect.origin.x;
1747 lcmdp->fontBM.rect.origin.y = cmd->fontBM.rect.origin.y;
1748 lcmdp->fontBM.rect.extent.x = cmd->fontBM.rect.extent.x;
1749 lcmdp->fontBM.rect.extent.y = cmd->fontBM.rect.extent.y;
1750 lcmdp->fontBM.base = cmd->fontBM.base;
1751 lcmdp->drawBM.type = cmd->drawBM.type;
1752 lcmdp->drawBM.depth = cmd->drawBM.depth;
1753 lcmdp->drawBM.width = cmd->drawBM.width;
1754 lcmdp->drawBM.rect.origin.x = cmd->drawBM.rect.origin.x;
1755 lcmdp->drawBM.rect.origin.y = cmd->drawBM.rect.origin.y;
1756 lcmdp->drawBM.rect.extent.x = cmd->drawBM.rect.extent.x;
1757 lcmdp->drawBM.rect.extent.y = cmd->drawBM.rect.extent.y;
1758 lcmdp->drawBM.base = cmd->drawBM.base;
1759 lcmdp->clip.origin.x = cmd->clip.origin.x;
1760 lcmdp->clip.origin.y = cmd->clip.origin.y;
1761 lcmdp->clip.extent.x = cmd->clip.extent.x;
1762 lcmdp->clip.extent.y = cmd->clip.extent.y;
1763 lcmdp->len = cmd->len;
1764 lcmdp->str = cmd->str;
1890 fbnsetpalette(fbp, cmd)
1892 lPalette *cmd; variable
1903 fbp->fb_palette.count = cmd->count;
1904 if ((len = cmd->count * sizeof(sPalette)) <= 0)
1906 if (error = fblockmem(cmd->palette, len, B_WRITE, fbmap, UIO_USERSPACE))
1915 while (cmd->count > 0) {
1916 count = min(cmd->count, (MAX_SIZE / sizeof(sPalette)));
1918 if (error = COPYIN((caddr_t)cmd->palette, (caddr_t)srcdestlist,
1922 cmd->count -= count;
1923 cmd->palette += count;
1957 fbngetpalette(fbp, cmd)
1959 lPalette *cmd; variable
1973 fbp->fb_palette.count = cmd->count;
1974 if ((len = cmd->count * sizeof(sPalette)) <= 0)
1976 if (error = fblockmem(cmd->palette, len, B_WRITE, fbmap, UIO_USERSPACE))
1984 savecount = cmd->count;
1985 savep = cmd->palette;
1987 while (cmd->count > 0) {
1988 count = min(cmd->count, (MAX_SIZE / sizeof(sPalette)));
1990 if (error = COPYIN((caddr_t)cmd->palette, (caddr_t)srcdestlist,
1998 (caddr_t)cmd->palette,
2002 (caddr_t)cmd->palette,
2007 cmd->count -= count;
2008 cmd->palette += count;
2010 cmd->count = savecount;
2011 cmd->palette = savep;