Changeset b74959bd in mainline for uspace/srv/fb/ega.c
- Timestamp:
- 2007-11-20T21:33:32Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 8498915
- Parents:
- 3209923
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/fb/ega.c
r3209923 rb74959bd 83 83 int i; 84 84 85 for (i = 0; i < scr_width *scr_height; i++) {85 for (i = 0; i < scr_width * scr_height; i++) { 86 86 scr_addr[i * 2] = ' '; 87 87 scr_addr[i * 2 + 1] = style; … … 126 126 if (rows > 0) { 127 127 memcpy(scr_addr, ((char *) scr_addr) + rows * scr_width * 2, 128 128 scr_width * scr_height * 2 - rows * scr_width * 2); 129 129 for (i = 0; i < rows * scr_width; i++) 130 130 (((short *) scr_addr) + scr_width * scr_height - rows * 131 131 scr_width)[i] = ((style << 8) + ' '); 132 132 } else if (rows < 0) { 133 133 memcpy(((char *)scr_addr) - rows * scr_width * 2, scr_addr, 134 134 scr_width * scr_height * 2 + rows * scr_width * 2); 135 135 for (i = 0; i < -rows * scr_width; i++) 136 136 ((short *)scr_addr)[i] = ((style << 8 ) + ' '); … … 153 153 scr_addr[i * 2] = data[i].character; 154 154 scr_addr[i * 2 + 1] = EGA_STYLE(data[i].style.fg_color, 155 155 data[i].style.bg_color); 156 156 } 157 157 } … … 161 161 int i; 162 162 163 for (i =0; (i < MAX_SAVED_SCREENS) && (saved_screens[i].data); i++)163 for (i = 0; (i < MAX_SAVED_SCREENS) && (saved_screens[i].data); i++) 164 164 ; 165 165 if (i == MAX_SAVED_SCREENS) … … 176 176 if (saved_screens[i].data) 177 177 memcpy(scr_addr, saved_screens[i].data, 2 * scr_width * 178 178 scr_height); 179 179 else 180 180 return EINVAL; … … 196 196 197 197 if (client_connected) { 198 ipc_answer_ fast(iid, ELIMIT, 0,0);198 ipc_answer_0(iid, ELIMIT); 199 199 return; 200 200 } 201 201 client_connected = 1; 202 ipc_answer_ fast(iid, 0, 0, 0); /* Accept connection */202 ipc_answer_0(iid, EOK); /* Accept connection */ 203 203 204 204 while (1) { … … 207 207 case IPC_M_PHONE_HUNGUP: 208 208 client_connected = 0; 209 ipc_answer_ fast(callid, 0, 0, 0);209 ipc_answer_0(callid, EOK); 210 210 return; /* Exit thread */ 211 211 case IPC_M_AS_AREA_SEND: … … 213 213 intersize = IPC_GET_ARG2(call); 214 214 if (intersize >= scr_width * scr_height * 215 216 receive_comm_area(callid, &call, (void *)217 215 sizeof(*interbuf)) { 216 receive_comm_area(callid, &call, 217 (void *) &interbuf); 218 218 continue; 219 219 } … … 229 229 break; 230 230 case FB_GET_CSIZE: 231 ipc_answer_ fast(callid, 0, scr_height, scr_width);231 ipc_answer_2(callid, EOK, scr_height, scr_width); 232 232 continue; 233 233 case FB_CLEAR: … … 301 301 retval = ENOENT; 302 302 } 303 ipc_answer_ fast(callid, retval, 0, 0);303 ipc_answer_0(callid, retval); 304 304 } 305 305 } … … 319 319 320 320 physmem_map(ega_ph_addr, scr_addr, ALIGN_UP(sz, PAGE_SIZE) >> 321 321 PAGE_WIDTH, AS_AREA_READ | AS_AREA_WRITE); 322 322 323 323 async_set_client_connection(ega_client_connection);
Note:
See TracChangeset
for help on using the changeset viewer.