BOOK.PS
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:2328k
源码类别:

操作系统开发

开发平台:

C/C++

  1. (already)294 3504 A
  2. (done)168 3840 A
  3. 4050(*/)S
  4. 2520 V
  5. (11993)210 648 A
  6. 2610 V
  7. (11994)210 648 A
  8. 1362(/*)S
  9. (None)168 1488 A
  10. 1698(or)S
  11. (not)126 1824 A
  12. (all)126 1992 A
  13. (the)126 2160 A
  14. (bytes)210 2328 A
  15. (could)210 2580 A
  16. 2832(be)S
  17. (written,)336 2958 A
  18. 3336(so)S
  19. (either)252 3462 A
  20. (suspend)294 3756 A
  21. (the)126 4092 A
  22. 2700 V
  23. (11995)210 648 A
  24. 1404(*)S
  25. (caller)252 1488 A
  26. 1782(or)S
  27. (break)210 1908 A
  28. (off)126 2160 A
  29. (the)126 2328 A
  30. (write)210 2496 A
  31. 2748(if)S
  32. (nonblocking.)504 2874 A
  33. 2790 V
  34. (11996)210 648 A
  35. 1404(*/)S
  36. 2880 V
  37. (11997)210 648 A
  38. 1362(if)S
  39. ((m_ptr->TTY_FLAGS)714 1488 A
  40. 2244(&)S
  41. (O_NONBLOCK))462 2328 A
  42. 2832({)S
  43. 3378(/*)S
  44. (cancel)252 3504 A
  45. (the)126 3798 A
  46. (write)210 3966 A
  47. 4218(*/)S
  48. 2970 V
  49. (11998)210 648 A
  50. 1698(r)S
  51. 1782(=)S
  52. (tp->tty_outcum)588 1866 A
  53. 2496(>)S
  54. 2580(0)S
  55. 2664(?)S
  56. (tp->tty_outcum)588 2748 A
  57. 3378(:)S
  58. (EAGAIN;)294 3462 A
  59. 3060 V
  60. (11999)210 648 A
  61. (tp->tty_outleft)630 1698 A
  62. 2370(=)S
  63. (tp->tty_outcum)588 2454 A
  64. 3084(=)S
  65. 3168(0;)S
  66. 3150 V
  67. (12000)210 648 A
  68. 1362(})S
  69. (else)168 1446 A
  70. 1656({)S
  71. 3240 V
  72. (12001)210 648 A
  73. 1698(r)S
  74. 1782(=)S
  75. (SUSPEND;)336 1866 A
  76. 3378(/*)S
  77. (suspend)294 3504 A
  78. (the)126 3840 A
  79. (caller)252 4008 A
  80. 4302(*/)S
  81. 3330 V
  82. (12002)210 648 A
  83. (tp->tty_outrepcode)756 1698 A
  84. 2496(=)S
  85. (REVIVE;)294 2580 A
  86. 3420 V
  87. (12003)210 648 A
  88. 1362(})S
  89. 3510 V
  90. (12004)210 648 A
  91. 1110(})S
  92. 3600 V
  93. (12005)210 648 A
  94. (tty_reply(TASK_REPLY,)882 1110 A
  95. (m_ptr->m_source,)672 2034 A
  96. (m_ptr->PROC_NR,)630 2748 A
  97. (r);)126 3420 A
  98. 3690 V
  99. (12006)210 648 A
  100. 1026(})S
  101. 3960 V
  102. (12009)210 648 A
  103. (/*===========================================================================*)3276 1026 A
  104. 4050 V
  105. (12010)210 648 A
  106. 1068(*)S
  107. (do_ioctl)336 2370 A
  108. 4260(*)S
  109. 4140 V
  110. (12011)210 648 A
  111. (*===========================================================================*/)3276 1068 A
  112. 4230 V
  113. (12012)210 648 A
  114. (PRIVATE)294 1026 A
  115. (void)168 1362 A
  116. (do_ioctl(tp,)504 1572 A
  117. (m_ptr))252 2118 A
  118. 4320 V
  119. (12013)210 648 A
  120. (register)336 1026 A
  121. (tty_t)210 1404 A
  122. (*tp;)168 1656 A
  123. 4410 V
  124. (12014)210 648 A
  125. (message)294 1026 A
  126. (*m_ptr;)294 1362 A
  127. 2370(/*)S
  128. (pointer)294 2496 A
  129. 2832(to)S
  130. (message)294 2958 A
  131. (sent)168 3294 A
  132. 3504(to)S
  133. (task)168 3630 A
  134. 3840(*/)S
  135. 4500 V
  136. (12015)210 648 A
  137. 1026({)S
  138. 4590 V
  139. (12016)210 648 A
  140. 1026(/*)S
  141. (Perform)294 1152 A
  142. 1488(an)S
  143. (IOCTL)210 1614 A
  144. 1866(on)S
  145. (this)168 1992 A
  146. (terminal.)378 2202 A
  147. (Posix)210 2622 A
  148. (termios)294 2874 A
  149. (calls)210 3210 A
  150. (are)126 3462 A
  151. (handled)294 3630 A
  152. 4680 V
  153. (12017)210 648 A
  154. 1068(*)S
  155. 1152(by)S
  156. (the)126 1278 A
  157. (IOCTL)210 1446 A
  158. (system)252 1698 A
  159. (call)168 1992 A
  160. 4770 V
  161. (12018)210 648 A
  162. 1068(*/)S
  163. 4860 V
  164. (12019)210 648 A
  165. 4950 V
  166. (12020)210 648 A
  167. (int)126 1110 A
  168. 1278(r;)S
  169. 5040 V
  170. (12021)210 648 A
  171. (union)210 1110 A
  172. 1362({)S
  173. 5130 V
  174. (12022)210 648 A
  175. (int)126 1362 A
  176. 1530(i;)S
  177. 5220 V
  178. (12023)210 648 A
  179. 1362(/*)S
  180. (these)210 1488 A
  181. (non-Posix)378 1740 A
  182. (params)252 2160 A
  183. (are)126 2454 A
  184. (not)126 2622 A
  185. (used)168 2790 A
  186. (now,)168 3000 A
  187. (but)126 3210 A
  188. (the)126 3378 A
  189. (union)210 3546 A
  190. 3798(is)S
  191. (retained)336 3924 A
  192. 5310 V
  193. (12024)210 648 A
  194. 1404(*)S
  195. 1488(to)S
  196. (minimize)336 1614 A
  197. (code)168 1992 A
  198. (differences)462 2202 A
  199. (with)168 2706 A
  200. (backward)336 2916 A
  201. (compatible)420 3294 A
  202. (version)294 3756 A
  203. 5400 V
  204. (12025)210 648 A
  205. 1404(*)S
  206. (struct)252 1488 A
  207. (sgttyb)252 1782 A
  208. (sg;)126 2076 A
  209. 5490 V
  210. (12026)210 648 A
  211. 1404(*)S
  212. (struct)252 1488 A
  213. (tchars)252 1782 A
  214. (tc;)126 2076 A
  215. 5580 V
  216. (12027)210 648 A
  217. 1404(*/)S
  218. 5670 V
  219. (12028)210 648 A
  220. 1110(})S
  221. (param;)252 1194 A
  222. 5760 V
  223. (12029)210 648 A
  224. (phys_bytes)420 1110 A
  225. (user_phys;)420 1572 A
  226. 5850 V
  227. (12030)210 648 A
  228. (size_t)252 1110 A
  229. (size;)210 1404 A
  230. 5940 V
  231. (12031)210 648 A
  232. 6030 V
  233. (12032)210 648 A
  234. 1110(/*)S
  235. (Size)168 1236 A
  236. 1446(of)S
  237. (the)126 1572 A
  238. (ioctl)210 1740 A
  239. (parameter.)420 1992 A
  240. 2454(*/)S
  241. 6120 V
  242. (12033)210 648 A
  243. (switch)252 1110 A
  244. ((m_ptr->TTY_REQUEST))840 1404 A
  245. 2286({)S
  246. 6210 V
  247. (12034)210 648 A
  248. (case)168 1194 A
  249. (TCGETS:)294 1404 A
  250. 2034(/*)S
  251. (Posix)210 2160 A
  252. (tcgetattr)378 2412 A
  253. (function)336 2832 A
  254. 3210(*/)S
  255. 8418 V
  256. EP
  257. %%Page: 161 161
  258. BP
  259. /slant 0 def
  260. /height 0 def
  261. 630 V
  262. 10 R
  263. 648(MINIX)S
  264. 976(SOURCE)S
  265. 1399(CODE)S
  266. 11 R
  267. 2089(File:)S
  268. (src/kernel/tty.c)665 2322 A
  269. 12 B
  270. (161)180 4248 A
  271. 900 V
  272. 7 LST
  273. (12035)210 648 A
  274. (case)168 1194 A
  275. (TCSETS:)294 1404 A
  276. 2034(/*)S
  277. (Posix)210 2160 A
  278. (tcsetattr)378 2412 A
  279. (function,)378 2832 A
  280. (TCSANOW)294 3252 A
  281. (option)252 3588 A
  282. 3882(*/)S
  283. 990 V
  284. (12036)210 648 A
  285. (case)168 1194 A
  286. (TCSETSW:)336 1404 A
  287. 2034(/*)S
  288. (Posix)210 2160 A
  289. (tcsetattr)378 2412 A
  290. (function,)378 2832 A
  291. (TCSADRAIN)378 3252 A
  292. (option)252 3672 A
  293. 3966(*/)S
  294. 1080 V
  295. (12037)210 648 A
  296. (case)168 1194 A
  297. (TCSETSF:)336 1404 A
  298. 2034(/*)S
  299. (Posix)210 2160 A
  300. (tcsetattr)378 2412 A
  301. (function,)378 2832 A
  302. (TCSAFLUSH)378 3252 A
  303. (option)252 3672 A
  304. 3966(*/)S
  305. 1170 V
  306. (12038)210 648 A
  307. (size)168 1362 A
  308. 1572(=)S
  309. (sizeof(struct)546 1656 A
  310. (termios);)378 2244 A
  311. 1260 V
  312. (12039)210 648 A
  313. (break;)252 1362 A
  314. 1350 V
  315. (12040)210 648 A
  316. 1440 V
  317. (12041)210 648 A
  318. (case)168 1194 A
  319. (TCSBRK:)294 1404 A
  320. 2034(/*)S
  321. (Posix)210 2160 A
  322. (tcsendbreak)462 2412 A
  323. (function)336 2916 A
  324. 3294(*/)S
  325. 1530 V
  326. (12042)210 648 A
  327. (case)168 1194 A
  328. (TCFLOW:)294 1404 A
  329. 2034(/*)S
  330. (Posix)210 2160 A
  331. (tcflow)252 2412 A
  332. (function)336 2706 A
  333. 3084(*/)S
  334. 1620 V
  335. (12043)210 648 A
  336. (case)168 1194 A
  337. (TCFLSH:)294 1404 A
  338. 2034(/*)S
  339. (Posix)210 2160 A
  340. (tcflush)294 2412 A
  341. (function)336 2748 A
  342. 3126(*/)S
  343. 1710 V
  344. (12044)210 648 A
  345. (case)168 1194 A
  346. (TIOCGPGRP:)420 1404 A
  347. 2034(/*)S
  348. (Posix)210 2160 A
  349. (tcgetpgrp)378 2412 A
  350. (function)336 2832 A
  351. 3210(*/)S
  352. 1800 V
  353. (12045)210 648 A
  354. (case)168 1194 A
  355. (TIOCSPGRP:)420 1404 A
  356. 2034(/*)S
  357. (Posix)210 2160 A
  358. (tcsetpgrp)378 2412 A
  359. (function)336 2832 A
  360. 3210(*/)S
  361. 1890 V
  362. (12046)210 648 A
  363. (size)168 1362 A
  364. 1572(=)S
  365. (sizeof(int);)504 1656 A
  366. 1980 V
  367. (12047)210 648 A
  368. (break;)252 1362 A
  369. 2070 V
  370. (12048)210 648 A
  371. 2160 V
  372. (12049)210 648 A
  373. (case)168 1194 A
  374. (TIOCGWINSZ:)462 1404 A
  375. 2034(/*)S
  376. (get)126 2160 A
  377. (window)252 2328 A
  378. (size)168 2622 A
  379. ((not)168 2832 A
  380. (Posix))252 3042 A
  381. 3336(*/)S
  382. 2250 V
  383. (12050)210 648 A
  384. (case)168 1194 A
  385. (TIOCSWINSZ:)462 1404 A
  386. 2034(/*)S
  387. (set)126 2160 A
  388. (window)252 2328 A
  389. (size)168 2622 A
  390. ((not)168 2832 A
  391. (Posix))252 3042 A
  392. 3336(*/)S
  393. 2340 V
  394. (12051)210 648 A
  395. (size)168 1362 A
  396. 1572(=)S
  397. (sizeof(struct)546 1656 A
  398. (winsize);)378 2244 A
  399. 2430 V
  400. (12052)210 648 A
  401. (break;)252 1362 A
  402. 2520 V
  403. (12053)210 648 A
  404. 2610 V
  405. (12054)210 648 A
  406. (case)168 1194 A
  407. (KIOCSMAP:)378 1404 A
  408. 2034(/*)S
  409. (load)168 2160 A
  410. (keymap)252 2370 A
  411. ((Minix)252 2664 A
  412. (extension))420 2958 A
  413. 3420(*/)S
  414. 2700 V
  415. (12055)210 648 A
  416. (size)168 1362 A
  417. 1572(=)S
  418. (sizeof(keymap_t);)714 1656 A
  419. 2790 V
  420. (12056)210 648 A
  421. (break;)252 1362 A
  422. 2880 V
  423. (12057)210 648 A
  424. 2970 V
  425. (12058)210 648 A
  426. (case)168 1194 A
  427. (TIOCSFON:)378 1404 A
  428. 2034(/*)S
  429. (load)168 2160 A
  430. (font)168 2370 A
  431. ((Minix)252 2580 A
  432. (extension))420 2874 A
  433. 3336(*/)S
  434. 3060 V
  435. (12059)210 648 A
  436. (size)168 1362 A
  437. 1572(=)S
  438. (sizeof(u8_t)462 1656 A
  439. ([8192]);)336 2160 A
  440. 3150 V
  441. (12060)210 648 A
  442. (break;)252 1362 A
  443. 3240 V
  444. (12061)210 648 A
  445. 3330 V
  446. (12062)210 648 A
  447. (case)168 1194 A
  448. (TCDRAIN:)336 1404 A
  449. 2034(/*)S
  450. (Posix)210 2160 A
  451. (tcdrain)294 2412 A
  452. (function)336 2748 A
  453. 3126(--)S
  454. 3252(no)S
  455. (parameter)378 3378 A
  456. 3798(*/)S
  457. 3420 V
  458. (12063)210 648 A
  459. (default:)336 1194 A
  460. (size)168 2034 A
  461. 2244(=)S
  462. 2328(0;)S
  463. 3510 V
  464. (12064)210 648 A
  465. 1110(})S
  466. 3600 V
  467. (12065)210 648 A
  468. 3690 V
  469. (12066)210 648 A
  470. 1110(if)S
  471. ((size)210 1236 A
  472. 1488(!=)S
  473. 1614(0))S
  474. 1740({)S
  475. 3780 V
  476. (12067)210 648 A
  477. (user_phys)378 1362 A
  478. 1782(=)S
  479. (numap(m_ptr->PROC_NR,)882 1866 A
  480. ((vir_bytes))462 2790 A
  481. (m_ptr->ADDRESS,)630 3294 A
  482. (size);)252 3966 A
  483. 3870 V
  484. (12068)210 648 A
  485. 1362(if)S
  486. ((user_phys)420 1488 A
  487. 1950(==)S
  488. 2076(0))S
  489. 2202({)S
  490. 3960 V
  491. (12069)210 648 A
  492. (tty_reply(TASK_REPLY,)882 1698 A
  493. (m_ptr->m_source,)672 2622 A
  494. (m_ptr->PROC_NR,)630 3336 A
  495. (EFAULT);)336 4008 A
  496. 4050 V
  497. (12070)210 648 A
  498. (return;)294 1698 A
  499. 4140 V
  500. (12071)210 648 A
  501. 1362(})S
  502. 4230 V
  503. (12072)210 648 A
  504. 1110(})S
  505. 4320 V
  506. (12073)210 648 A
  507. 4410 V
  508. (12074)210 648 A
  509. 1110(r)S
  510. 1194(=)S
  511. (OK;)126 1278 A
  512. 4500 V
  513. (12075)210 648 A
  514. (switch)252 1110 A
  515. ((m_ptr->TTY_REQUEST))840 1404 A
  516. 2286({)S
  517. 4590 V
  518. (12076)210 648 A
  519. (case)168 1194 A
  520. (TCGETS:)294 1404 A
  521. 4680 V
  522. (12077)210 648 A
  523. 1362(/*)S
  524. (Get)126 1488 A
  525. (the)126 1656 A
  526. (termios)294 1824 A
  527. (attributes.)462 2160 A
  528. 2664(*/)S
  529. 4770 V
  530. (12078)210 648 A
  531. (phys_copy(vir2phys(&tp->tty_termios),)1554 1362 A
  532. (user_phys,)420 2958 A
  533. ((phys_bytes))504 3420 A
  534. (size);)252 3966 A
  535. 4860 V
  536. (12079)210 648 A
  537. (break;)252 1362 A
  538. 4950 V
  539. (12080)210 648 A
  540. 5040 V
  541. (12081)210 648 A
  542. (case)168 1194 A
  543. (TCSETSW:)336 1404 A
  544. 5130 V
  545. (12082)210 648 A
  546. (case)168 1194 A
  547. (TCSETSF:)336 1404 A
  548. 5220 V
  549. (12083)210 648 A
  550. (case)168 1194 A
  551. (TCDRAIN:)336 1404 A
  552. 5310 V
  553. (12084)210 648 A
  554. 1362(if)S
  555. ((tp->tty_outleft)672 1488 A
  556. 2202(>)S
  557. 2286(0))S
  558. 2412({)S
  559. 5400 V
  560. (12085)210 648 A
  561. 1698(/*)S
  562. (Wait)168 1824 A
  563. (for)126 2034 A
  564. (all)126 2202 A
  565. (ongoing)294 2370 A
  566. (output)252 2706 A
  567. (processing)420 3000 A
  568. 3462(to)S
  569. (finish.)294 3588 A
  570. 3924(*/)S
  571. 5490 V
  572. (12086)210 648 A
  573. (tp->tty_iocaller)672 1698 A
  574. 2412(=)S
  575. (m_ptr->m_source;)672 2496 A
  576. 5580 V
  577. (12087)210 648 A
  578. (tp->tty_ioproc)588 1698 A
  579. 2328(=)S
  580. (m_ptr->PROC_NR;)630 2412 A
  581. 5670 V
  582. (12088)210 648 A
  583. (tp->tty_ioreq)546 1698 A
  584. 2286(=)S
  585. (m_ptr->REQUEST;)630 2370 A
  586. 5760 V
  587. (12089)210 648 A
  588. (tp->tty_iovir)546 1698 A
  589. 2286(=)S
  590. ((vir_bytes))462 2370 A
  591. (m_ptr->ADDRESS;)630 2874 A
  592. 5850 V
  593. (12090)210 648 A
  594. 1698(r)S
  595. 1782(=)S
  596. (SUSPEND;)336 1866 A
  597. 5940 V
  598. (12091)210 648 A
  599. (break;)252 1698 A
  600. 6030 V
  601. (12092)210 648 A
  602. 1362(})S
  603. 6120 V
  604. (12093)210 648 A
  605. 1362(if)S
  606. ((m_ptr->TTY_REQUEST)798 1488 A
  607. 2328(==)S
  608. (TCDRAIN))336 2454 A
  609. (break;)252 2832 A
  610. 6210 V
  611. (12094)210 648 A
  612. 1362(if)S
  613. ((m_ptr->TTY_REQUEST)798 1488 A
  614. 2328(==)S
  615. (TCSETSF))336 2454 A
  616. (tty_icancel(tp);)672 2832 A
  617. 8418 V
  618. EP
  619. %%Page: 162 162
  620. BP
  621. /slant 0 def
  622. /height 0 def
  623. 630 V
  624. 12 B
  625. (162)180 648 A
  626. 11 R
  627. 2089(File:)S
  628. (src/kernel/tty.c)665 2322 A
  629. 10 R
  630. 3402(MINIX)S
  631. 3730(SOURCE)S
  632. 4153(CODE)S
  633. 900 V
  634. 7 LST
  635. (12095)210 648 A
  636. (/*FALL)252 1362 A
  637. (THROUGH*/)378 1656 A
  638. 990 V
  639. (12096)210 648 A
  640. (case)168 1194 A
  641. (TCSETS:)294 1404 A
  642. 1080 V
  643. (12097)210 648 A
  644. 1362(/*)S
  645. (Set)126 1488 A
  646. (the)126 1656 A
  647. (termios)294 1824 A
  648. (attributes.)462 2160 A
  649. 2664(*/)S
  650. 1170 V
  651. (12098)210 648 A
  652. (phys_copy(user_phys,)840 1362 A
  653. (vir2phys(&tp->tty_termios),)1134 2244 A
  654. ((phys_bytes))504 3420 A
  655. (size);)252 3966 A
  656. 1260 V
  657. (12099)210 648 A
  658. (setattr(tp);)504 1362 A
  659. 1350 V
  660. (12100)210 648 A
  661. (break;)252 1362 A
  662. 1440 V
  663. (12101)210 648 A
  664. 1530 V
  665. (12102)210 648 A
  666. (case)168 1194 A
  667. (TCFLSH:)294 1404 A
  668. 1620 V
  669. (12103)210 648 A
  670. (phys_copy(user_phys,)840 1362 A
  671. (vir2phys(&param.i),)798 2244 A
  672. ((phys_bytes))504 3084 A
  673. (size);)252 3630 A
  674. 1710 V
  675. (12104)210 648 A
  676. (switch)252 1362 A
  677. ((param.i))378 1656 A
  678. 2076({)S
  679. 1800 V
  680. (12105)210 648 A
  681. (case)168 1530 A
  682. (TCIFLUSH:)378 1740 A
  683. (tty_icancel(tp);)672 2370 A
  684. (break;)252 4050 A
  685. 1890 V
  686. (12106)210 648 A
  687. (case)168 1530 A
  688. (TCOFLUSH:)378 1740 A
  689. ((*tp->tty_ocancel)(tp);)966 2370 A
  690. (break;)252 4050 A
  691. 1980 V
  692. (12107)210 648 A
  693. (case)168 1530 A
  694. (TCIOFLUSH:)420 1740 A
  695. (tty_icancel(tp);)672 2370 A
  696. ((*tp->tty_ocancel)(tp);break;)1218 3084 A
  697. 2070 V
  698. (12108)210 648 A
  699. (default:)336 1530 A
  700. 2370(r)S
  701. 2454(=)S
  702. (EINVAL;)294 2538 A
  703. 2160 V
  704. (12109)210 648 A
  705. 1362(})S
  706. 2250 V
  707. (12110)210 648 A
  708. (break;)252 1362 A
  709. 2340 V
  710. (12111)210 648 A
  711. 2430 V
  712. (12112)210 648 A
  713. (case)168 1194 A
  714. (TCFLOW:)294 1404 A
  715. 2520 V
  716. (12113)210 648 A
  717. (phys_copy(user_phys,)840 1362 A
  718. (vir2phys(&param.i),)798 2244 A
  719. ((phys_bytes))504 3084 A
  720. (size);)252 3630 A
  721. 2610 V
  722. (12114)210 648 A
  723. (switch)252 1362 A
  724. ((param.i))378 1656 A
  725. 2076({)S
  726. 2700 V
  727. (12115)210 648 A
  728. (case)168 1530 A
  729. (TCOOFF:)294 1740 A
  730. 2790 V
  731. (12116)210 648 A
  732. (case)168 1530 A
  733. (TCOON:)252 1740 A
  734. 2880 V
  735. (12117)210 648 A
  736. (tp->tty_inhibited)714 1698 A
  737. 2454(=)S
  738. ((param.i)336 2538 A
  739. 2916(==)S
  740. (TCOOFF);)336 3042 A
  741. 2970 V
  742. (12118)210 648 A
  743. (tp->tty_events)588 1698 A
  744. 2328(=)S
  745. 2412(1;)S
  746. 3060 V
  747. (12119)210 648 A
  748. (break;)252 1698 A
  749. 3150 V
  750. (12120)210 648 A
  751. (case)168 1530 A
  752. (TCIOFF:)294 1740 A
  753. 3240 V
  754. (12121)210 648 A
  755. ((*tp->tty_echo)(tp,)798 1698 A
  756. (tp->tty_termios.c_cc[VSTOP]);)1218 2538 A
  757. 3330 V
  758. (12122)210 648 A
  759. (break;)252 1698 A
  760. 3420 V
  761. (12123)210 648 A
  762. (case)168 1530 A
  763. (TCION:)252 1740 A
  764. 3510 V
  765. (12124)210 648 A
  766. ((*tp->tty_echo)(tp,)798 1698 A
  767. (tp->tty_termios.c_cc[VSTART]);)1260 2538 A
  768. 3600 V
  769. (12125)210 648 A
  770. (break;)252 1698 A
  771. 3690 V
  772. (12126)210 648 A
  773. (default:)336 1530 A
  774. 3780 V
  775. (12127)210 648 A
  776. 1698(r)S
  777. 1782(=)S
  778. (EINVAL;)294 1866 A
  779. 3870 V
  780. (12128)210 648 A
  781. 1362(})S
  782. 3960 V
  783. (12129)210 648 A
  784. (break;)252 1362 A
  785. 4050 V
  786. (12130)210 648 A
  787. 4140 V
  788. (12131)210 648 A
  789. (case)168 1194 A
  790. (TCSBRK:)294 1404 A
  791. 4230 V
  792. (12132)210 648 A
  793. 1362(if)S
  794. ((tp->tty_break)588 1488 A
  795. 2118(!=)S
  796. (NULL))210 2244 A
  797. ((*tp->tty_break)(tp);)882 2496 A
  798. 4320 V
  799. (12133)210 648 A
  800. (break;)252 1362 A
  801. 4410 V
  802. (12134)210 648 A
  803. 4500 V
  804. (12135)210 648 A
  805. (case)168 1194 A
  806. (TIOCGWINSZ:)462 1404 A
  807. 4590 V
  808. (12136)210 648 A
  809. (phys_copy(vir2phys(&tp->tty_winsize),)1554 1362 A
  810. (user_phys,)420 2958 A
  811. ((phys_bytes))504 3420 A
  812. (size);)252 3966 A
  813. 4680 V
  814. (12137)210 648 A
  815. (break;)252 1362 A
  816. 4770 V
  817. (12138)210 648 A
  818. 4860 V
  819. (12139)210 648 A
  820. (case)168 1194 A
  821. (TIOCSWINSZ:)462 1404 A
  822. 4950 V
  823. (12140)210 648 A
  824. (phys_copy(user_phys,)840 1362 A
  825. (vir2phys(&tp->tty_winsize),)1134 2244 A
  826. ((phys_bytes))504 3420 A
  827. (size);)252 3966 A
  828. 5040 V
  829. (12141)210 648 A
  830. 1362(/*)S
  831. (SIGWINCH...)462 1488 A
  832. 1992(*/)S
  833. 5130 V
  834. (12142)210 648 A
  835. (break;)252 1362 A
  836. 5220 V
  837. (12143)210 648 A
  838. 5310 V
  839. (12144)210 648 A
  840. (case)168 1194 A
  841. (KIOCSMAP:)378 1404 A
  842. 5400 V
  843. (12145)210 648 A
  844. 1362(/*)S
  845. (Load)168 1488 A
  846. 1698(a)S
  847. (new)126 1782 A
  848. (keymap)252 1950 A
  849. ((only)210 2244 A
  850. (/dev/console).)588 2496 A
  851. 3126(*/)S
  852. 5490 V
  853. (12146)210 648 A
  854. 1362(if)S
  855. ((isconsole(tp)))630 1488 A
  856. 2160(r)S
  857. 2244(=)S
  858. (kbd_loadmap(user_phys);)966 2328 A
  859. 5580 V
  860. (12147)210 648 A
  861. (break;)252 1362 A
  862. 5670 V
  863. (12148)210 648 A
  864. 5760 V
  865. (12149)210 648 A
  866. (case)168 1194 A
  867. (TIOCSFON:)378 1404 A
  868. 5850 V
  869. (12150)210 648 A
  870. 1362(/*)S
  871. (Load)168 1488 A
  872. 1698(a)S
  873. (font)168 1782 A
  874. (into)168 1992 A
  875. 2202(an)S
  876. (EGA)126 2328 A
  877. 2496(or)S
  878. (VGA)126 2622 A
  879. (card)168 2790 A
  880. ((hs@hck.hr))462 3000 A
  881. 3504(*/)S
  882. 5940 V
  883. (12151)210 648 A
  884. 1362(if)S
  885. ((isconsole(tp)))630 1488 A
  886. 2160(r)S
  887. 2244(=)S
  888. (con_loadfont(user_phys);)1008 2328 A
  889. 6030 V
  890. (12152)210 648 A
  891. (break;)252 1362 A
  892. 6120 V
  893. (12153)210 648 A
  894. 6210 V
  895. (12154)210 648 A
  896. 1026(/*)S
  897. (These)210 1152 A
  898. (Posix)210 1404 A
  899. (functions)378 1656 A
  900. (are)126 2076 A
  901. (allowed)294 2244 A
  902. 2580(to)S
  903. (fail)168 2706 A
  904. 2916(if)S
  905. (_POSIX_JOB_CONTROL)756 3042 A
  906. 3840(is)S
  907. 8418 V
  908. EP
  909. %%Page: 163 163
  910. BP
  911. /slant 0 def
  912. /height 0 def
  913. 630 V
  914. 10 R
  915. 648(MINIX)S
  916. 976(SOURCE)S
  917. 1399(CODE)S
  918. 11 R
  919. 2089(File:)S
  920. (src/kernel/tty.c)665 2322 A
  921. 12 B
  922. (163)180 4248 A
  923. 900 V
  924. 7 LST
  925. (12155)210 648 A
  926. 1068(*)S
  927. (not)126 1152 A
  928. (defined.)336 1320 A
  929. 990 V
  930. (12156)210 648 A
  931. 1068(*/)S
  932. 1080 V
  933. (12157)210 648 A
  934. (case)168 1194 A
  935. (TIOCGPGRP:)420 1404 A
  936. 1170 V
  937. (12158)210 648 A
  938. (case)168 1194 A
  939. (TIOCSPGRP:)420 1404 A
  940. 1260 V
  941. (12159)210 648 A
  942. (default:)336 1194 A
  943. 1350 V
  944. (12160)210 648 A
  945. 1362(r)S
  946. 1446(=)S
  947. (ENOTTY;)294 1530 A
  948. 1440 V
  949. (12161)210 648 A
  950. 1110(})S
  951. 1530 V
  952. (12162)210 648 A
  953. 1620 V
  954. (12163)210 648 A
  955. 1110(/*)S
  956. (Send)168 1236 A
  957. (the)126 1446 A
  958. (reply.)252 1614 A
  959. 1908(*/)S
  960. 1710 V
  961. (12164)210 648 A
  962. (tty_reply(TASK_REPLY,)882 1110 A
  963. (m_ptr->m_source,)672 2034 A
  964. (m_ptr->PROC_NR,)630 2748 A
  965. (r);)126 3420 A
  966. 1800 V
  967. (12165)210 648 A
  968. 1026(})S
  969. 2070 V
  970. (12168)210 648 A
  971. (/*===========================================================================*)3276 1026 A
  972. 2160 V
  973. (12169)210 648 A
  974. 1068(*)S
  975. (do_open)294 2370 A
  976. 4260(*)S
  977. 2250 V
  978. (12170)210 648 A
  979. (*===========================================================================*/)3276 1068 A
  980. 2340 V
  981. (12171)210 648 A
  982. (PRIVATE)294 1026 A
  983. (void)168 1362 A
  984. (do_open(tp,)462 1572 A
  985. (m_ptr))252 2076 A
  986. 2430 V
  987. (12172)210 648 A
  988. (register)336 1026 A
  989. (tty_t)210 1404 A
  990. (*tp;)168 1656 A
  991. 2520 V
  992. (12173)210 648 A
  993. (message)294 1026 A
  994. (*m_ptr;)294 1362 A
  995. 2370(/*)S
  996. (pointer)294 2496 A
  997. 2832(to)S
  998. (message)294 2958 A
  999. (sent)168 3294 A
  1000. 3504(to)S
  1001. (task)168 3630 A
  1002. 3840(*/)S
  1003. 2610 V
  1004. (12174)210 648 A
  1005. 1026({)S
  1006. 2700 V
  1007. (12175)210 648 A
  1008. 1026(/*)S
  1009. 1152(A)S
  1010. (tty)126 1236 A
  1011. (line)168 1404 A
  1012. (has)126 1614 A
  1013. (been)168 1782 A
  1014. (opened.)294 1992 A
  1015. (Make)168 2370 A
  1016. 2580(it)S
  1017. (the)126 2706 A
  1018. (callers)294 2874 A
  1019. (controlling)462 3210 A
  1020. (tty)126 3714 A
  1021. 3882(if)S
  1022. 2790 V
  1023. (12176)210 648 A
  1024. 1068(*)S
  1025. (O_NOCTTY)336 1152 A
  1026. 1530(is)S
  1027. (*not*)210 1656 A
  1028. (set)126 1908 A
  1029. (and)126 2076 A
  1030. 2244(it)S
  1031. 2370(is)S
  1032. (not)126 2496 A
  1033. (the)126 2664 A
  1034. (log)126 2832 A
  1035. (device.)294 3000 A
  1036. 3378(1)S
  1037. 3462(is)S
  1038. (returned)336 3588 A
  1039. 3966(if)S
  1040. 2880 V
  1041. (12177)210 648 A
  1042. 1068(*)S
  1043. (the)126 1152 A
  1044. (tty)126 1320 A
  1045. 1488(is)S
  1046. (made)168 1614 A
  1047. (the)126 1824 A
  1048. (controlling)462 1992 A
  1049. (tty,)168 2496 A
  1050. (otherwise)378 2706 A
  1051. 3126(OK)S
  1052. 3252(or)S
  1053. 3378(an)S
  1054. (error)210 3504 A
  1055. (code.)210 3756 A
  1056. 2970 V
  1057. (12178)210 648 A
  1058. 1068(*/)S
  1059. 3060 V
  1060. (12179)210 648 A
  1061. (int)126 1110 A
  1062. 1278(r)S
  1063. 1362(=)S
  1064. (OK;)126 1446 A
  1065. 3150 V
  1066. (12180)210 648 A
  1067. 3240 V
  1068. (12181)210 648 A
  1069. 1110(if)S
  1070. ((m_ptr->TTY_LINE)672 1236 A
  1071. 1950(==)S
  1072. (LOG_MINOR))420 2076 A
  1073. 2538({)S
  1074. 3330 V
  1075. (12182)210 648 A
  1076. 1362(/*)S
  1077. (The)126 1488 A
  1078. (log)126 1656 A
  1079. (device)252 1824 A
  1080. 2118(is)S
  1081. 2244(a)S
  1082. (write-only)420 2328 A
  1083. (diagnostics)462 2790 A
  1084. (device.)294 3294 A
  1085. 3630(*/)S
  1086. 3420 V
  1087. (12183)210 648 A
  1088. 1362(if)S
  1089. ((m_ptr->COUNT)546 1488 A
  1090. 2076(&)S
  1091. (R_BIT))252 2160 A
  1092. 2454(r)S
  1093. 2538(=)S
  1094. (EACCES;)294 2622 A
  1095. 3510 V
  1096. (12184)210 648 A
  1097. 1110(})S
  1098. (else)168 1194 A
  1099. 1404({)S
  1100. 3600 V
  1101. (12185)210 648 A
  1102. 1362(if)S
  1103. ((!(m_ptr->COUNT)630 1488 A
  1104. 2160(&)S
  1105. (O_NOCTTY)))420 2244 A
  1106. 2706({)S
  1107. 3690 V
  1108. (12186)210 648 A
  1109. (tp->tty_pgrp)504 1698 A
  1110. 2244(=)S
  1111. (m_ptr->PROC_NR;)630 2328 A
  1112. 3780 V
  1113. (12187)210 648 A
  1114. 1698(r)S
  1115. 1782(=)S
  1116. 1866(1;)S
  1117. 3870 V
  1118. (12188)210 648 A
  1119. 1362(})S
  1120. 3960 V
  1121. (12189)210 648 A
  1122. (tp->tty_openct++;)714 1362 A
  1123. 4050 V
  1124. (12190)210 648 A
  1125. 1110(})S
  1126. 4140 V
  1127. (12191)210 648 A
  1128. (tty_reply(TASK_REPLY,)882 1110 A
  1129. (m_ptr->m_source,)672 2034 A
  1130. (m_ptr->PROC_NR,)630 2748 A
  1131. (r);)126 3420 A
  1132. 4230 V
  1133. (12192)210 648 A
  1134. 1026(})S
  1135. 4500 V
  1136. (12195)210 648 A
  1137. (/*===========================================================================*)3276 1026 A
  1138. 4590 V
  1139. (12196)210 648 A
  1140. 1068(*)S
  1141. (do_close)336 2370 A
  1142. 4260(*)S
  1143. 4680 V
  1144. (12197)210 648 A
  1145. (*===========================================================================*/)3276 1068 A
  1146. 4770 V
  1147. (12198)210 648 A
  1148. (PRIVATE)294 1026 A
  1149. (void)168 1362 A
  1150. (do_close(tp,)504 1572 A
  1151. (m_ptr))252 2118 A
  1152. 4860 V
  1153. (12199)210 648 A
  1154. (register)336 1026 A
  1155. (tty_t)210 1404 A
  1156. (*tp;)168 1656 A
  1157. 4950 V
  1158. (12200)210 648 A
  1159. (message)294 1026 A
  1160. (*m_ptr;)294 1362 A
  1161. 2370(/*)S
  1162. (pointer)294 2496 A
  1163. 2832(to)S
  1164. (message)294 2958 A
  1165. (sent)168 3294 A
  1166. 3504(to)S
  1167. (task)168 3630 A
  1168. 3840(*/)S
  1169. 5040 V
  1170. (12201)210 648 A
  1171. 1026({)S
  1172. 5130 V
  1173. (12202)210 648 A
  1174. 1026(/*)S
  1175. 1152(A)S
  1176. (tty)126 1236 A
  1177. (line)168 1404 A
  1178. (has)126 1614 A
  1179. (been)168 1782 A
  1180. (closed.)294 1992 A
  1181. (Clean)210 2370 A
  1182. 2622(up)S
  1183. (the)126 2748 A
  1184. (line)168 2916 A
  1185. 3126(if)S
  1186. 3252(it)S
  1187. 3378(is)S
  1188. (the)126 3504 A
  1189. (last)168 3672 A
  1190. (close.)252 3882 A
  1191. 4176(*/)S
  1192. 5220 V
  1193. (12203)210 648 A
  1194. 5310 V
  1195. (12204)210 648 A
  1196. 1110(if)S
  1197. ((m_ptr->TTY_LINE)672 1236 A
  1198. 1950(!=)S
  1199. (LOG_MINOR)378 2076 A
  1200. 2496(&&)S
  1201. (--tp->tty_openct)672 2622 A
  1202. 3336(==)S
  1203. 3462(0))S
  1204. 3588({)S
  1205. 5400 V
  1206. (12205)210 648 A
  1207. (tp->tty_pgrp)504 1362 A
  1208. 1908(=)S
  1209. 1992(0;)S
  1210. 5490 V
  1211. (12206)210 648 A
  1212. (tty_icancel(tp);)672 1362 A
  1213. 5580 V
  1214. (12207)210 648 A
  1215. ((*tp->tty_ocancel)(tp);)966 1362 A
  1216. 5670 V
  1217. (12208)210 648 A
  1218. ((*tp->tty_close)(tp);)882 1362 A
  1219. 5760 V
  1220. (12209)210 648 A
  1221. (tp->tty_termios)630 1362 A
  1222. 2034(=)S
  1223. (termios_defaults;)714 2118 A
  1224. 5850 V
  1225. (12210)210 648 A
  1226. (tp->tty_winsize)630 1362 A
  1227. 2034(=)S
  1228. (winsize_defaults;)714 2118 A
  1229. 5940 V
  1230. (12211)210 648 A
  1231. (setattr(tp);)504 1362 A
  1232. 6030 V
  1233. (12212)210 648 A
  1234. 1110(})S
  1235. 6120 V
  1236. (12213)210 648 A
  1237. (tty_reply(TASK_REPLY,)882 1110 A
  1238. (m_ptr->m_source,)672 2034 A
  1239. (m_ptr->PROC_NR,)630 2748 A
  1240. (OK);)168 3420 A
  1241. 6210 V
  1242. (12214)210 648 A
  1243. 1026(})S
  1244. 8418 V
  1245. EP
  1246. %%Page: 164 164
  1247. BP
  1248. /slant 0 def
  1249. /height 0 def
  1250. 630 V
  1251. 12 B
  1252. (164)180 648 A
  1253. 11 R
  1254. 2089(File:)S
  1255. (src/kernel/tty.c)665 2322 A
  1256. 10 R
  1257. 3402(MINIX)S
  1258. 3730(SOURCE)S
  1259. 4153(CODE)S
  1260. 1080 V
  1261. 7 LST
  1262. (12217)210 648 A
  1263. (/*===========================================================================*)3276 1026 A
  1264. 1170 V
  1265. (12218)210 648 A
  1266. 1068(*)S
  1267. (do_cancel)378 2370 A
  1268. 4260(*)S
  1269. 1260 V
  1270. (12219)210 648 A
  1271. (*===========================================================================*/)3276 1068 A
  1272. 1350 V
  1273. (12220)210 648 A
  1274. (PRIVATE)294 1026 A
  1275. (void)168 1362 A
  1276. (do_cancel(tp,)546 1572 A
  1277. (m_ptr))252 2160 A
  1278. 1440 V
  1279. (12221)210 648 A
  1280. (register)336 1026 A
  1281. (tty_t)210 1404 A
  1282. (*tp;)168 1656 A
  1283. 1530 V
  1284. (12222)210 648 A
  1285. (message)294 1026 A
  1286. (*m_ptr;)294 1362 A
  1287. 2370(/*)S
  1288. (pointer)294 2496 A
  1289. 2832(to)S
  1290. (message)294 2958 A
  1291. (sent)168 3294 A
  1292. 3504(to)S
  1293. (task)168 3630 A
  1294. 3840(*/)S
  1295. 1620 V
  1296. (12223)210 648 A
  1297. 1026({)S
  1298. 1710 V
  1299. (12224)210 648 A
  1300. 1026(/*)S
  1301. 1152(A)S
  1302. (signal)252 1236 A
  1303. (has)126 1530 A
  1304. (been)168 1698 A
  1305. (sent)168 1908 A
  1306. 2118(to)S
  1307. 2244(a)S
  1308. (process)294 2328 A
  1309. (that)168 2664 A
  1310. 2874(is)S
  1311. (hanging)294 3000 A
  1312. (trying)252 3336 A
  1313. 3630(to)S
  1314. (read)168 3756 A
  1315. 3966(or)S
  1316. (write.)252 4092 A
  1317. 1800 V
  1318. (12225)210 648 A
  1319. 1068(*)S
  1320. (The)126 1152 A
  1321. (pending)294 1320 A
  1322. (read)168 1656 A
  1323. 1866(or)S
  1324. (write)210 1992 A
  1325. (must)168 2244 A
  1326. 2454(be)S
  1327. (finished)336 2580 A
  1328. (off)126 2958 A
  1329. (immediately.)504 3126 A
  1330. 1890 V
  1331. (12226)210 648 A
  1332. 1068(*/)S
  1333. 1980 V
  1334. (12227)210 648 A
  1335. 2070 V
  1336. (12228)210 648 A
  1337. (int)126 1110 A
  1338. (proc_nr;)336 1278 A
  1339. 2160 V
  1340. (12229)210 648 A
  1341. (int)126 1110 A
  1342. (mode;)210 1278 A
  1343. 2250 V
  1344. (12230)210 648 A
  1345. 2340 V
  1346. (12231)210 648 A
  1347. 1110(/*)S
  1348. (Check)210 1236 A
  1349. (the)126 1488 A
  1350. (parameters)420 1656 A
  1351. (carefully,)420 2118 A
  1352. 2580(to)S
  1353. (avoid)210 2706 A
  1354. (cancelling)420 2958 A
  1355. (twice.)252 3420 A
  1356. 3714(*/)S
  1357. 2430 V
  1358. (12232)210 648 A
  1359. (proc_nr)294 1110 A
  1360. 1446(=)S
  1361. (m_ptr->PROC_NR;)630 1530 A
  1362. 2520 V
  1363. (12233)210 648 A
  1364. (mode)168 1110 A
  1365. 1320(=)S
  1366. (m_ptr->COUNT;)546 1404 A
  1367. 2610 V
  1368. (12234)210 648 A
  1369. 1110(if)S
  1370. (((mode)252 1236 A
  1371. 1530(&)S
  1372. (R_BIT))252 1614 A
  1373. 1908(&&)S
  1374. (tp->tty_inleft)588 2034 A
  1375. 2664(!=)S
  1376. 2790(0)S
  1377. 2874(&&)S
  1378. (proc_nr)294 3000 A
  1379. 3336(==)S
  1380. (tp->tty_inproc))630 3462 A
  1381. 4134({)S
  1382. 2700 V
  1383. (12235)210 648 A
  1384. 1362(/*)S
  1385. (Process)294 1488 A
  1386. (was)126 1824 A
  1387. (reading)294 1992 A
  1388. (when)168 2328 A
  1389. (killed.)294 2538 A
  1390. (Clean)210 2916 A
  1391. 3168(up)S
  1392. (input.)252 3294 A
  1393. 3588(*/)S
  1394. 2790 V
  1395. (12236)210 648 A
  1396. (tty_icancel(tp);)672 1362 A
  1397. 2880 V
  1398. (12237)210 648 A
  1399. (tp->tty_inleft)588 1362 A
  1400. 1992(=)S
  1401. (tp->tty_incum)546 2076 A
  1402. 2664(=)S
  1403. 2748(0;)S
  1404. 2970 V
  1405. (12238)210 648 A
  1406. 1110(})S
  1407. 3060 V
  1408. (12239)210 648 A
  1409. 1110(if)S
  1410. (((mode)252 1236 A
  1411. 1530(&)S
  1412. (W_BIT))252 1614 A
  1413. 1908(&&)S
  1414. (tp->tty_outleft)630 2034 A
  1415. 2706(!=)S
  1416. 2832(0)S
  1417. 2916(&&)S
  1418. (proc_nr)294 3042 A
  1419. 3378(==)S
  1420. (tp->tty_outproc))672 3504 A
  1421. 4218({)S
  1422. 3150 V
  1423. (12240)210 648 A
  1424. 1362(/*)S
  1425. (Process)294 1488 A
  1426. (was)126 1824 A
  1427. (writing)294 1992 A
  1428. (when)168 2328 A
  1429. (killed.)294 2538 A
  1430. (Clean)210 2916 A
  1431. 3168(up)S
  1432. (output.)294 3294 A
  1433. 3630(*/)S
  1434. 3240 V
  1435. (12241)210 648 A
  1436. ((*tp->tty_ocancel)(tp);)966 1362 A
  1437. 3330 V
  1438. (12242)210 648 A
  1439. (tp->tty_outleft)630 1362 A
  1440. 2034(=)S
  1441. (tp->tty_outcum)588 2118 A
  1442. 2748(=)S
  1443. 2832(0;)S
  1444. 3420 V
  1445. (12243)210 648 A
  1446. 1110(})S
  1447. 3510 V
  1448. (12244)210 648 A
  1449. 1110(if)S
  1450. ((tp->tty_ioreq)588 1236 A
  1451. 1866(!=)S
  1452. 1992(0)S
  1453. 2076(&&)S
  1454. (proc_nr)294 2202 A
  1455. 2538(==)S
  1456. (tp->tty_ioproc))630 2664 A
  1457. 3336({)S
  1458. 3600 V
  1459. (12245)210 648 A
  1460. 1362(/*)S
  1461. (Process)294 1488 A
  1462. (was)126 1824 A
  1463. (waiting)294 1992 A
  1464. (for)126 2328 A
  1465. (output)252 2496 A
  1466. 2790(to)S
  1467. (drain.)252 2916 A
  1468. 3210(*/)S
  1469. 3690 V
  1470. (12246)210 648 A
  1471. (tp->tty_ioreq)546 1362 A
  1472. 1950(=)S
  1473. 2034(0;)S
  1474. 3780 V
  1475. (12247)210 648 A
  1476. 1110(})S
  1477. 3870 V
  1478. (12248)210 648 A
  1479. (tp->tty_events)588 1110 A
  1480. 1740(=)S
  1481. 1824(1;)S
  1482. 3960 V
  1483. (12249)210 648 A
  1484. (tty_reply(TASK_REPLY,)882 1110 A
  1485. (m_ptr->m_source,)672 2034 A
  1486. (proc_nr,)336 2748 A
  1487. (EINTR);)294 3126 A
  1488. 4050 V
  1489. (12250)210 648 A
  1490. 1026(})S
  1491. 4320 V
  1492. (12253)210 648 A
  1493. (/*===========================================================================*)3276 1026 A
  1494. 4410 V
  1495. (12254)210 648 A
  1496. 1068(*)S
  1497. (handle_events)546 2370 A
  1498. 4260(*)S
  1499. 4500 V
  1500. (12255)210 648 A
  1501. (*===========================================================================*/)3276 1068 A
  1502. 4590 V
  1503. (12256)210 648 A
  1504. (PUBLIC)252 1026 A
  1505. (void)168 1320 A
  1506. (handle_events(tp))714 1530 A
  1507. 4680 V
  1508. (12257)210 648 A
  1509. (tty_t)210 1026 A
  1510. (*tp;)168 1278 A
  1511. 2370(/*)S
  1512. (TTY)126 2496 A
  1513. 2664(to)S
  1514. (check)210 2790 A
  1515. (for)126 3042 A
  1516. (events.)294 3210 A
  1517. 3546(*/)S
  1518. 4770 V
  1519. (12258)210 648 A
  1520. 1026({)S
  1521. 4860 V
  1522. (12259)210 648 A
  1523. 1026(/*)S
  1524. (Handle)252 1152 A
  1525. (any)126 1446 A
  1526. (events)252 1614 A
  1527. (pending)294 1908 A
  1528. 2244(on)S
  1529. 2370(a)S
  1530. (TTY.)168 2454 A
  1531. (These)210 2706 A
  1532. (events)252 2958 A
  1533. (are)126 3252 A
  1534. (usually)294 3420 A
  1535. (device)252 3756 A
  1536. 4950 V
  1537. (12260)210 648 A
  1538. 1068(*)S
  1539. (interrupts.)462 1152 A
  1540. 5040 V
  1541. (12261)210 648 A
  1542. 1068(*)S
  1543. 5130 V
  1544. (12262)210 648 A
  1545. 1068(*)S
  1546. (Two)126 1152 A
  1547. (kinds)210 1320 A
  1548. 1572(of)S
  1549. (events)252 1698 A
  1550. (are)126 1992 A
  1551. (prominent:)420 2160 A
  1552. 5220 V
  1553. (12263)210 648 A
  1554. 1068(*)S
  1555. 1362(-)S
  1556. 1446(a)S
  1557. (character)378 1530 A
  1558. (has)126 1950 A
  1559. (been)168 2118 A
  1560. (received)336 2328 A
  1561. (from)168 2706 A
  1562. (the)126 2916 A
  1563. (console)294 3084 A
  1564. 3420(or)S
  1565. 3546(an)S
  1566. (RS232)210 3672 A
  1567. (line.)210 3924 A
  1568. 5310 V
  1569. (12264)210 648 A
  1570. 1068(*)S
  1571. 1362(-)S
  1572. 1446(an)S
  1573. (RS232)210 1572 A
  1574. (line)168 1824 A
  1575. (has)126 2034 A
  1576. (completed)378 2202 A
  1577. 2622(a)S
  1578. (write)210 2706 A
  1579. (request)294 2958 A
  1580. ((on)126 3294 A
  1581. (behalf)252 3462 A
  1582. 3756(of)S
  1583. 3882(a)S
  1584. (user).)252 3966 A
  1585. 5400 V
  1586. (12265)210 648 A
  1587. 1068(*)S
  1588. (The)126 1152 A
  1589. (interrupt)378 1320 A
  1590. (handler)294 1740 A
  1591. (may)126 2076 A
  1592. (delay)210 2244 A
  1593. (the)126 2496 A
  1594. (interrupt)378 2664 A
  1595. (message)294 3084 A
  1596. 3420(at)S
  1597. (its)126 3546 A
  1598. (discretion)420 3714 A
  1599. 5490 V
  1600. (12266)210 648 A
  1601. 1068(*)S
  1602. 1152(to)S
  1603. (avoid)210 1278 A
  1604. (swamping)336 1530 A
  1605. (the)126 1908 A
  1606. (TTY)126 2076 A
  1607. (task.)210 2244 A
  1608. (Messages)336 2538 A
  1609. (may)126 2916 A
  1610. 3084(be)S
  1611. (overwritten)462 3210 A
  1612. (when)168 3714 A
  1613. (the)126 3924 A
  1614. 5580 V
  1615. (12267)210 648 A
  1616. 1068(*)S
  1617. (lines)210 1152 A
  1618. (are)126 1404 A
  1619. (fast)168 1572 A
  1620. 1782(or)S
  1621. (when)168 1908 A
  1622. (there)210 2118 A
  1623. (are)126 2370 A
  1624. (races)210 2538 A
  1625. (between)294 2790 A
  1626. (different)378 3126 A
  1627. (lines,)252 3546 A
  1628. (input)210 3840 A
  1629. 5670 V
  1630. (12268)210 648 A
  1631. 1068(*)S
  1632. (and)126 1152 A
  1633. (output,)294 1320 A
  1634. (because)294 1656 A
  1635. (MINIX)210 1992 A
  1636. (only)168 2244 A
  1637. (provides)336 2454 A
  1638. (single)252 2832 A
  1639. (buffering)378 3126 A
  1640. (for)126 3546 A
  1641. (interrupt)378 3714 A
  1642. 5760 V
  1643. (12269)210 648 A
  1644. 1068(*)S
  1645. (messages)336 1152 A
  1646. ((in)126 1530 A
  1647. (proc.c).)336 1698 A
  1648. (This)168 2118 A
  1649. 2328(is)S
  1650. (handled)294 2454 A
  1651. 2790(by)S
  1652. (explicitly)420 2916 A
  1653. (checking)336 3378 A
  1654. (each)168 3756 A
  1655. (line)168 3966 A
  1656. 5850 V
  1657. (12270)210 648 A
  1658. 1068(*)S
  1659. (for)126 1152 A
  1660. (fresh)210 1320 A
  1661. (input)210 1572 A
  1662. (and)126 1824 A
  1663. (completed)378 1992 A
  1664. (output)252 2412 A
  1665. 2706(on)S
  1666. (each)168 2832 A
  1667. (interrupt.)420 3042 A
  1668. 5940 V
  1669. (12271)210 648 A
  1670. 1068(*/)S
  1671. 6030 V
  1672. (12272)210 648 A
  1673. (char)168 1110 A
  1674. (*buf;)210 1320 A
  1675. 6120 V
  1676. (12273)210 648 A
  1677. (unsigned)336 1110 A
  1678. (count;)252 1488 A
  1679. 6210 V
  1680. (12274)210 648 A
  1681. 8418 V
  1682. EP
  1683. %%Page: 165 165
  1684. BP
  1685. /slant 0 def
  1686. /height 0 def
  1687. 630 V
  1688. 10 R
  1689. 648(MINIX)S
  1690. 976(SOURCE)S
  1691. 1399(CODE)S
  1692. 11 R
  1693. 2089(File:)S
  1694. (src/kernel/tty.c)665 2322 A
  1695. 12 B
  1696. (165)180 4248 A
  1697. 900 V
  1698. 7 LST
  1699. (12275)210 648 A
  1700. 1110(do)S
  1701. 1236({)S
  1702. 990 V
  1703. (12276)210 648 A
  1704. (tp->tty_events)588 1362 A
  1705. 1992(=)S
  1706. 2076(0;)S
  1707. 1080 V
  1708. (12277)210 648 A
  1709. 1170 V
  1710. (12278)210 648 A
  1711. 1362(/*)S
  1712. (Read)168 1488 A
  1713. (input)210 1698 A
  1714. (and)126 1950 A
  1715. (perform)294 2118 A
  1716. (input)210 2454 A
  1717. (processing.)462 2706 A
  1718. 3210(*/)S
  1719. 1260 V
  1720. (12279)210 648 A
  1721. ((*tp->tty_devread)(tp);)966 1362 A
  1722. 1350 V
  1723. (12280)210 648 A
  1724. 1440 V
  1725. (12281)210 648 A
  1726. 1362(/*)S
  1727. (Perform)294 1488 A
  1728. (output)252 1824 A
  1729. (processing)420 2118 A
  1730. (and)126 2580 A
  1731. (write)210 2748 A
  1732. (output.)294 3000 A
  1733. 3336(*/)S
  1734. 1530 V
  1735. (12282)210 648 A
  1736. ((*tp->tty_devwrite)(tp);)1008 1362 A
  1737. 1620 V
  1738. (12283)210 648 A
  1739. 1710 V
  1740. (12284)210 648 A
  1741. 1362(/*)S
  1742. (Ioctl)210 1488 A
  1743. (waiting)294 1740 A
  1744. (for)126 2076 A
  1745. (some)168 2244 A
  1746. (event?)252 2454 A
  1747. 2748(*/)S
  1748. 1800 V
  1749. (12285)210 648 A
  1750. 1362(if)S
  1751. ((tp->tty_ioreq)588 1488 A
  1752. 2118(!=)S
  1753. 2244(0))S
  1754. (dev_ioctl(tp);)588 2370 A
  1755. 1890 V
  1756. (12286)210 648 A
  1757. 1110(})S
  1758. (while)210 1194 A
  1759. ((tp->tty_events);)714 1446 A
  1760. 1980 V
  1761. (12287)210 648 A
  1762. 2070 V
  1763. (12288)210 648 A
  1764. 1110(/*)S
  1765. (Transfer)336 1236 A
  1766. (characters)420 1614 A
  1767. (from)168 2076 A
  1768. (the)126 2286 A
  1769. (input)210 2454 A
  1770. (queue)210 2706 A
  1771. 2958(to)S
  1772. 3084(a)S
  1773. (waiting)294 3168 A
  1774. (process.)336 3504 A
  1775. 3882(*/)S
  1776. 2160 V
  1777. (12289)210 648 A
  1778. (in_transfer(tp);)672 1110 A
  1779. 2250 V
  1780. (12290)210 648 A
  1781. 2340 V
  1782. (12291)210 648 A
  1783. 1110(/*)S
  1784. (Reply)210 1236 A
  1785. 1488(if)S
  1786. (enough)252 1614 A
  1787. (bytes)210 1908 A
  1788. (are)126 2160 A
  1789. (available.)420 2328 A
  1790. 2790(*/)S
  1791. 2430 V
  1792. (12292)210 648 A
  1793. 1110(if)S
  1794. ((tp->tty_incum)588 1236 A
  1795. 1866(>=)S
  1796. (tp->tty_min)462 1992 A
  1797. 2496(&&)S
  1798. (tp->tty_inleft)588 2622 A
  1799. 3252(>)S
  1800. 3336(0))S
  1801. 3462({)S
  1802. 2520 V
  1803. (12293)210 648 A
  1804. (tty_reply(tp->tty_inrepcode,)1176 1362 A
  1805. (tp->tty_incaller,)714 2580 A
  1806. (tp->tty_inproc,)630 3336 A
  1807. 2610 V
  1808. (12294)210 648 A
  1809. (tp->tty_incum);)630 3714 A
  1810. 2700 V
  1811. (12295)210 648 A
  1812. (tp->tty_inleft)588 1362 A
  1813. 1992(=)S
  1814. (tp->tty_incum)546 2076 A
  1815. 2664(=)S
  1816. 2748(0;)S
  1817. 2790 V
  1818. (12296)210 648 A
  1819. 1110(})S
  1820. 2880 V
  1821. (12297)210 648 A
  1822. 1026(})S
  1823. 3150 V
  1824. (12300)210 648 A
  1825. (/*===========================================================================*)3276 1026 A
  1826. 3240 V
  1827. (12301)210 648 A
  1828. 1068(*)S
  1829. (in_transfer)462 2370 A
  1830. 4260(*)S
  1831. 3330 V
  1832. (12302)210 648 A
  1833. (*===========================================================================*/)3276 1068 A
  1834. 3420 V
  1835. (12303)210 648 A
  1836. (PRIVATE)294 1026 A
  1837. (void)168 1362 A
  1838. (in_transfer(tp))630 1572 A
  1839. 3510 V
  1840. (12304)210 648 A
  1841. (register)336 1026 A
  1842. (tty_t)210 1404 A
  1843. (*tp;)168 1656 A
  1844. 2370(/*)S
  1845. (pointer)294 2496 A
  1846. 2832(to)S
  1847. (terminal)336 2958 A
  1848. 3336(to)S
  1849. (read)168 3462 A
  1850. (from)168 3672 A
  1851. 3882(*/)S
  1852. 3600 V
  1853. (12305)210 648 A
  1854. 1026({)S
  1855. 3690 V
  1856. (12306)210 648 A
  1857. 1026(/*)S
  1858. (Transfer)336 1152 A
  1859. (bytes)210 1530 A
  1860. (from)168 1782 A
  1861. (the)126 1992 A
  1862. (input)210 2160 A
  1863. (queue)210 2412 A
  1864. 2664(to)S
  1865. 2790(a)S
  1866. (process)294 2874 A
  1867. (reading)294 3210 A
  1868. (from)168 3546 A
  1869. 3756(a)S
  1870. (terminal.)378 3840 A
  1871. 4260(*/)S
  1872. 3780 V
  1873. (12307)210 648 A
  1874. 3870 V
  1875. (12308)210 648 A
  1876. (int)126 1110 A
  1877. (ch;)126 1278 A
  1878. 3960 V
  1879. (12309)210 648 A
  1880. (int)126 1110 A
  1881. (count;)252 1278 A
  1882. 4050 V
  1883. (12310)210 648 A
  1884. (phys_bytes)420 1110 A
  1885. (buf_phys,)378 1572 A
  1886. (user_base;)420 1992 A
  1887. 4140 V
  1888. (12311)210 648 A
  1889. (char)168 1110 A
  1890. (buf[64],)336 1320 A
  1891. (*bp;)168 1698 A
  1892. 4230 V
  1893. (12312)210 648 A
  1894. 4320 V
  1895. (12313)210 648 A
  1896. 1110(/*)S
  1897. (Anything)336 1236 A
  1898. 1614(to)S
  1899. (do?)126 1740 A
  1900. 1908(*/)S
  1901. 4410 V
  1902. (12314)210 648 A
  1903. 1110(if)S
  1904. ((tp->tty_inleft)630 1236 A
  1905. 1908(==)S
  1906. 2034(0)S
  1907. 2118(||)S
  1908. (tp->tty_eotct)546 2244 A
  1909. 2832(<)S
  1910. (tp->tty_min))504 2916 A
  1911. (return;)294 3462 A
  1912. 4500 V
  1913. (12315)210 648 A
  1914. 4590 V
  1915. (12316)210 648 A
  1916. (buf_phys)336 1110 A
  1917. 1488(=)S
  1918. (vir2phys(buf);)588 1572 A
  1919. 4680 V
  1920. (12317)210 648 A
  1921. (user_base)378 1110 A
  1922. 1530(=)S
  1923. (proc_vir2phys(proc_addr(tp->tty_inproc),)1680 1614 A
  1924. (0);)126 3336 A
  1925. 4770 V
  1926. (12318)210 648 A
  1927. 1110(bp)S
  1928. 1236(=)S
  1929. (buf;)168 1320 A
  1930. 4860 V
  1931. (12319)210 648 A
  1932. (while)210 1110 A
  1933. ((tp->tty_inleft)630 1362 A
  1934. 2034(>)S
  1935. 2118(0)S
  1936. 2202(&&)S
  1937. (tp->tty_eotct)546 2328 A
  1938. 2916(>)S
  1939. 3000(0))S
  1940. 3126({)S
  1941. 4950 V
  1942. (12320)210 648 A
  1943. 1362(ch)S
  1944. 1488(=)S
  1945. (*tp->tty_intail;)672 1572 A
  1946. 5040 V
  1947. (12321)210 648 A
  1948. 5130 V
  1949. (12322)210 648 A
  1950. 1362(if)S
  1951. ((!(ch)210 1488 A
  1952. 1740(&)S
  1953. (IN_EOF)))336 1824 A
  1954. 2202({)S
  1955. 5220 V
  1956. (12323)210 648 A
  1957. 1698(/*)S
  1958. (One)126 1824 A
  1959. (character)378 1992 A
  1960. 2412(to)S
  1961. 2538(be)S
  1962. (delivered)378 2664 A
  1963. 3084(to)S
  1964. (the)126 3210 A
  1965. (user.)210 3378 A
  1966. 3630(*/)S
  1967. 5310 V
  1968. (12324)210 648 A
  1969. (*bp)126 1698 A
  1970. 1866(=)S
  1971. 1950(ch)S
  1972. 2076(&)S
  1973. (IN_CHAR;)336 2160 A
  1974. 5400 V
  1975. (12325)210 648 A
  1976. (tp->tty_inleft--;)714 1698 A
  1977. 5490 V
  1978. (12326)210 648 A
  1979. 1698(if)S
  1980. ((++bp)210 1824 A
  1981. 2076(==)S
  1982. (bufend(buf)))504 2202 A
  1983. 2748({)S
  1984. 5580 V
  1985. (12327)210 648 A
  1986. 2034(/*)S
  1987. (Temp)168 2160 A
  1988. (buffer)252 2370 A
  1989. (full,)210 2664 A
  1990. (copy)168 2916 A
  1991. 3126(to)S
  1992. (user)168 3252 A
  1993. (space.)252 3462 A
  1994. 3756(*/)S
  1995. 5670 V
  1996. (12328)210 648 A
  1997. (phys_copy(buf_phys,)798 2034 A
  1998. (user_base)378 2874 A
  1999. 3294(+)S
  2000. (tp->tty_in_vir,)630 3378 A
  2001. 5760 V
  2002. (12329)210 648 A
  2003. ((phys_bytes))504 3042 A
  2004. (buflen(buf));)546 3588 A
  2005. 5850 V
  2006. (12330)210 648 A
  2007. (tp->tty_in_vir)588 2034 A
  2008. 2664(+=)S
  2009. (buflen(buf);)504 2790 A
  2010. 5940 V
  2011. (12331)210 648 A
  2012. (tp->tty_incum)546 2034 A
  2013. 2622(+=)S
  2014. (buflen(buf);)504 2748 A
  2015. 6030 V
  2016. (12332)210 648 A
  2017. 2034(bp)S
  2018. 2160(=)S
  2019. (buf;)168 2244 A
  2020. 6120 V
  2021. (12333)210 648 A
  2022. 1698(})S
  2023. 6210 V
  2024. (12334)210 648 A
  2025. 1362(})S
  2026. 8418 V
  2027. EP
  2028. %%Page: 166 166
  2029. BP
  2030. /slant 0 def
  2031. /height 0 def
  2032. 630 V
  2033. 12 B
  2034. (166)180 648 A
  2035. 11 R
  2036. 2089(File:)S
  2037. (src/kernel/tty.c)665 2322 A
  2038. 10 R
  2039. 3402(MINIX)S
  2040. 3730(SOURCE)S
  2041. 4153(CODE)S
  2042. 900 V
  2043. 7 LST
  2044. (12335)210 648 A
  2045. 990 V
  2046. (12336)210 648 A
  2047. 1362(/*)S
  2048. (Remove)252 1488 A
  2049. (the)126 1782 A
  2050. (character)378 1950 A
  2051. (from)168 2370 A
  2052. (the)126 2580 A
  2053. (input)210 2748 A
  2054. (queue.)252 3000 A
  2055. 3294(*/)S
  2056. 1080 V
  2057. (12337)210 648 A
  2058. 1362(if)S
  2059. ((++tp->tty_intail)714 1488 A
  2060. 2244(==)S
  2061. (bufend(tp->tty_inbuf)))924 2370 A
  2062. 1170 V
  2063. (12338)210 648 A
  2064. (tp->tty_intail)588 1698 A
  2065. 2328(=)S
  2066. (tp->tty_inbuf;)588 2412 A
  2067. 1260 V
  2068. (12339)210 648 A
  2069. (tp->tty_incount--;)756 1362 A
  2070. 1350 V
  2071. (12340)210 648 A
  2072. 1362(if)S
  2073. ((ch)126 1488 A
  2074. 1656(&)S
  2075. (IN_EOT))294 1740 A
  2076. 2076({)S
  2077. 1440 V
  2078. (12341)210 648 A
  2079. (tp->tty_eotct--;)672 1698 A
  2080. 1530 V
  2081. (12342)210 648 A
  2082. 1698(/*)S
  2083. (Don't)210 1824 A
  2084. (read)168 2076 A
  2085. (past)168 2286 A
  2086. 2496(a)S
  2087. (line)168 2580 A
  2088. (break)210 2790 A
  2089. 3042(in)S
  2090. (canonical)378 3168 A
  2091. (mode.)210 3588 A
  2092. 3840(*/)S
  2093. 1620 V
  2094. (12343)210 648 A
  2095. 1698(if)S
  2096. ((tp->tty_termios.c_lflag)1008 1824 A
  2097. 2874(&)S
  2098. (ICANON))294 2958 A
  2099. (tp->tty_inleft)588 3294 A
  2100. 3924(=)S
  2101. 4008(0;)S
  2102. 1710 V
  2103. (12344)210 648 A
  2104. 1362(})S
  2105. 1800 V
  2106. (12345)210 648 A
  2107. 1110(})S
  2108. 1890 V
  2109. (12346)210 648 A
  2110. 1980 V
  2111. (12347)210 648 A
  2112. 1110(if)S
  2113. ((bp)126 1236 A
  2114. 1404(>)S
  2115. (buf))168 1488 A
  2116. 1698({)S
  2117. 2070 V
  2118. (12348)210 648 A
  2119. 1362(/*)S
  2120. (Leftover)336 1488 A
  2121. (characters)420 1866 A
  2122. 2328(in)S
  2123. (the)126 2454 A
  2124. (buffer.)294 2622 A
  2125. 2958(*/)S
  2126. 2160 V
  2127. (12349)210 648 A
  2128. (count)210 1362 A
  2129. 1614(=)S
  2130. 1698(bp)S
  2131. 1824(-)S
  2132. (buf;)168 1908 A
  2133. 2250 V
  2134. (12350)210 648 A
  2135. (phys_copy(buf_phys,)798 1362 A
  2136. (user_base)378 2202 A
  2137. 2622(+)S
  2138. (tp->tty_in_vir,)630 2706 A
  2139. ((phys_bytes))504 3378 A
  2140. (count);)294 3924 A
  2141. 2340 V
  2142. (12351)210 648 A
  2143. (tp->tty_in_vir)588 1362 A
  2144. 1992(+=)S
  2145. (count;)252 2118 A
  2146. 2430 V
  2147. (12352)210 648 A
  2148. (tp->tty_incum)546 1362 A
  2149. 1950(+=)S
  2150. (count;)252 2076 A
  2151. 2520 V
  2152. (12353)210 648 A
  2153. 1110(})S
  2154. 2610 V
  2155. (12354)210 648 A
  2156. 2700 V
  2157. (12355)210 648 A
  2158. 1110(/*)S
  2159. (Usually)294 1236 A
  2160. (reply)210 1572 A
  2161. 1824(to)S
  2162. (the)126 1950 A
  2163. (reader,)294 2118 A
  2164. (possibly)336 2454 A
  2165. (even)168 2832 A
  2166. 3042(if)S
  2167. (incum)210 3168 A
  2168. 3420(==)S
  2169. 3546(0)S
  2170. ((EOF).)252 3630 A
  2171. 3924(*/)S
  2172. 2790 V
  2173. (12356)210 648 A
  2174. 1110(if)S
  2175. ((tp->tty_inleft)630 1236 A
  2176. 1908(==)S
  2177. 2034(0))S
  2178. 2160({)S
  2179. 2880 V
  2180. (12357)210 648 A
  2181. (tty_reply(tp->tty_inrepcode,)1176 1362 A
  2182. (tp->tty_incaller,)714 2580 A
  2183. (tp->tty_inproc,)630 3336 A
  2184. 2970 V
  2185. (12358)210 648 A
  2186. (tp->tty_incum);)630 3714 A
  2187. 3060 V
  2188. (12359)210 648 A
  2189. (tp->tty_inleft)588 1362 A
  2190. 1992(=)S
  2191. (tp->tty_incum)546 2076 A
  2192. 2664(=)S
  2193. 2748(0;)S
  2194. 3150 V
  2195. (12360)210 648 A
  2196. 1110(})S
  2197. 3240 V
  2198. (12361)210 648 A
  2199. 1026(})S
  2200. 3510 V
  2201. (12364)210 648 A
  2202. (/*===========================================================================*)3276 1026 A
  2203. 3600 V
  2204. (12365)210 648 A
  2205. 1068(*)S
  2206. (in_process)420 2370 A
  2207. 4260(*)S
  2208. 3690 V
  2209. (12366)210 648 A
  2210. (*===========================================================================*/)3276 1068 A
  2211. 3780 V
  2212. (12367)210 648 A
  2213. (PUBLIC)252 1026 A
  2214. (int)126 1320 A
  2215. (in_process(tp,)588 1488 A
  2216. (buf,)168 2118 A
  2217. (count))252 2328 A
  2218. 3870 V
  2219. (12368)210 648 A
  2220. (register)336 1026 A
  2221. (tty_t)210 1404 A
  2222. (*tp;)168 1656 A
  2223. 2370(/*)S
  2224. (terminal)336 2496 A
  2225. 2874(on)S
  2226. (which)210 3000 A
  2227. (character)378 3252 A
  2228. (has)126 3672 A
  2229. (arrived)294 3840 A
  2230. 4176(*/)S
  2231. 3960 V
  2232. (12369)210 648 A
  2233. (char)168 1026 A
  2234. (*buf;)210 1236 A
  2235. 2370(/*)S
  2236. (buffer)252 2496 A
  2237. (with)168 2790 A
  2238. (input)210 3000 A
  2239. (characters)420 3252 A
  2240. 3714(*/)S
  2241. 4050 V
  2242. (12370)210 648 A
  2243. (int)126 1026 A
  2244. (count;)252 1194 A
  2245. 2370(/*)S
  2246. (number)252 2496 A
  2247. 2790(of)S
  2248. (input)210 2916 A
  2249. (characters)420 3168 A
  2250. 3630(*/)S
  2251. 4140 V
  2252. (12371)210 648 A
  2253. 1026({)S
  2254. 4230 V
  2255. (12372)210 648 A
  2256. 1026(/*)S
  2257. (Characters)420 1152 A
  2258. (have)168 1614 A
  2259. (just)168 1824 A
  2260. (been)168 2034 A
  2261. (typed)210 2244 A
  2262. (in.)126 2496 A
  2263. (Process,)336 2706 A
  2264. (save,)210 3084 A
  2265. (and)126 3336 A
  2266. (echo)168 3504 A
  2267. (them.)210 3714 A
  2268. (Return)252 4008 A
  2269. 4320 V
  2270. (12373)210 648 A
  2271. 1068(*)S
  2272. (the)126 1152 A
  2273. (number)252 1320 A
  2274. 1614(of)S
  2275. (characters)420 1740 A
  2276. (processed.)420 2202 A
  2277. 4410 V
  2278. (12374)210 648 A
  2279. 1068(*/)S
  2280. 4500 V
  2281. (12375)210 648 A
  2282. 4590 V
  2283. (12376)210 648 A
  2284. (int)126 1110 A
  2285. (ch,)126 1278 A
  2286. (sig,)168 1446 A
  2287. (ct;)126 1656 A
  2288. 4680 V
  2289. (12377)210 648 A
  2290. (int)126 1110 A
  2291. (timeset)294 1278 A
  2292. 1614(=)S
  2293. (FALSE;)252 1698 A
  2294. 4770 V
  2295. (12378)210 648 A
  2296. (static)252 1110 A
  2297. (unsigned)336 1404 A
  2298. (char)168 1782 A
  2299. (csize_mask[])504 1992 A
  2300. 2538(=)S
  2301. 2622({)S
  2302. (0x1F,)210 2706 A
  2303. (0x3F,)210 2958 A
  2304. (0x7F,)210 3210 A
  2305. (0xFF)168 3462 A
  2306. 3672(};)S
  2307. 4860 V
  2308. (12379)210 648 A
  2309. 4950 V
  2310. (12380)210 648 A
  2311. (for)126 1110 A
  2312. ((ct)126 1278 A
  2313. 1446(=)S
  2314. 1530(0;)S
  2315. 1656(ct)S
  2316. 1782(<)S
  2317. (count;)252 1866 A
  2318. (ct++))210 2160 A
  2319. 2412({)S
  2320. 5040 V
  2321. (12381)210 648 A
  2322. 1362(/*)S
  2323. (Take)168 1488 A
  2324. (one)126 1698 A
  2325. (character.)420 1866 A
  2326. 2328(*/)S
  2327. 5130 V
  2328. (12382)210 648 A
  2329. 1362(ch)S
  2330. 1488(=)S
  2331. (*buf++)252 1572 A
  2332. 1866(&)S
  2333. (BYTE;)210 1950 A
  2334. 5220 V
  2335. (12383)210 648 A
  2336. 5310 V
  2337. (12384)210 648 A
  2338. 1362(/*)S
  2339. (Strip)210 1488 A
  2340. 1740(to)S
  2341. (seven)210 1866 A
  2342. (bits?)210 2118 A
  2343. 2370(*/)S
  2344. 5400 V
  2345. (12385)210 648 A
  2346. 1362(if)S
  2347. ((tp->tty_termios.c_iflag)1008 1488 A
  2348. 2538(&)S
  2349. (ISTRIP))294 2622 A
  2350. 2958(ch)S
  2351. 3084(&=)S
  2352. (0x7F;)210 3210 A
  2353. 5490 V
  2354. (12386)210 648 A
  2355. 5580 V
  2356. (12387)210 648 A
  2357. 1362(/*)S
  2358. (Input)210 1488 A
  2359. (extensions?)462 1740 A
  2360. 2244(*/)S
  2361. 5670 V
  2362. (12388)210 648 A
  2363. 1362(if)S
  2364. ((tp->tty_termios.c_lflag)1008 1488 A
  2365. 2538(&)S
  2366. (IEXTEN))294 2622 A
  2367. 2958({)S
  2368. 5760 V
  2369. (12389)210 648 A
  2370. 5850 V
  2371. (12390)210 648 A
  2372. 1698(/*)S
  2373. (Previous)336 1824 A
  2374. (character)378 2202 A
  2375. (was)126 2622 A
  2376. 2790(a)S
  2377. (character)378 2874 A
  2378. (escape?)294 3294 A
  2379. 3630(*/)S
  2380. 5940 V
  2381. (12391)210 648 A
  2382. 1698(if)S
  2383. ((tp->tty_escaped))714 1824 A
  2384. 2580({)S
  2385. 6030 V
  2386. (12392)210 648 A
  2387. (tp->tty_escaped)630 2034 A
  2388. 2706(=)S
  2389. (NOT_ESCAPED;)504 2790 A
  2390. 6120 V
  2391. (12393)210 648 A
  2392. 2034(ch)S
  2393. 2160(|=)S
  2394. (IN_ESC;)294 2286 A
  2395. 2706(/*)S
  2396. (protect)294 2832 A
  2397. (character)378 3168 A
  2398. 3588(*/)S
  2399. 6210 V
  2400. (12394)210 648 A
  2401. 1698(})S
  2402. 8418 V
  2403. EP
  2404. %%Page: 167 167
  2405. BP
  2406. /slant 0 def
  2407. /height 0 def
  2408. 630 V
  2409. 10 R
  2410. 648(MINIX)S
  2411. 976(SOURCE)S
  2412. 1399(CODE)S
  2413. 11 R
  2414. 2089(File:)S
  2415. (src/kernel/tty.c)665 2322 A
  2416. 12 B
  2417. (167)180 4248 A
  2418. 900 V
  2419. 7 LST
  2420. (12395)210 648 A
  2421. 990 V
  2422. (12396)210 648 A
  2423. 1698(/*)S
  2424. (LNEXT)210 1824 A
  2425. ((303V))168 2076 A
  2426. 2286(to)S
  2427. (escape)252 2412 A
  2428. (the)126 2706 A
  2429. (next)168 2874 A
  2430. (character?)420 3084 A
  2431. 3546(*/)S
  2432. 1080 V
  2433. (12397)210 648 A
  2434. 1698(if)S
  2435. ((ch)126 1824 A
  2436. 1992(==)S
  2437. (tp->tty_termios.c_cc[VLNEXT]))1218 2118 A
  2438. 3378({)S
  2439. 1170 V
  2440. (12398)210 648 A
  2441. (tp->tty_escaped)630 2034 A
  2442. 2706(=)S
  2443. (ESCAPED;)336 2790 A
  2444. 1260 V
  2445. (12399)210 648 A
  2446. (rawecho(tp,)462 2034 A
  2447. ('303');)210 2538 A
  2448. 1350 V
  2449. (12400)210 648 A
  2450. (rawecho(tp,)462 2034 A
  2451. ('\b');)252 2538 A
  2452. 1440 V
  2453. (12401)210 648 A
  2454. (continue;)378 2034 A
  2455. 2706(/*)S
  2456. 2832(do)S
  2457. (not)126 2958 A
  2458. (store)210 3126 A
  2459. (the)126 3378 A
  2460. (escape)252 3546 A
  2461. 3840(*/)S
  2462. 1530 V
  2463. (12402)210 648 A
  2464. 1698(})S
  2465. 1620 V
  2466. (12403)210 648 A
  2467. 1710 V
  2468. (12404)210 648 A
  2469. 1698(/*)S
  2470. (REPRINT)294 1824 A
  2471. ((303R))168 2160 A
  2472. 2370(to)S
  2473. (reprint)294 2496 A
  2474. (echoed)252 2832 A
  2475. (characters?)462 3126 A
  2476. 3630(*/)S
  2477. 1800 V
  2478. (12405)210 648 A
  2479. 1698(if)S
  2480. ((ch)126 1824 A
  2481. 1992(==)S
  2482. (tp->tty_termios.c_cc[VREPRINT]))1302 2118 A
  2483. 3462({)S
  2484. 1890 V
  2485. (12406)210 648 A
  2486. (reprint(tp);)504 2034 A
  2487. 1980 V
  2488. (12407)210 648 A
  2489. (continue;)378 2034 A
  2490. 2070 V
  2491. (12408)210 648 A
  2492. 1698(})S
  2493. 2160 V
  2494. (12409)210 648 A
  2495. 1362(})S
  2496. 2250 V
  2497. (12410)210 648 A
  2498. 2340 V
  2499. (12411)210 648 A
  2500. 1362(/*)S
  2501. (_POSIX_VDISABLE)630 1488 A
  2502. 2160(is)S
  2503. 2286(a)S
  2504. (normal)252 2370 A
  2505. (character)378 2664 A
  2506. (value,)252 3084 A
  2507. 3378(so)S
  2508. (better)252 3504 A
  2509. (escape)252 3798 A
  2510. (it.)126 4092 A
  2511. 4260(*/)S
  2512. 2430 V
  2513. (12412)210 648 A
  2514. 1362(if)S
  2515. ((ch)126 1488 A
  2516. 1656(==)S
  2517. (_POSIX_VDISABLE))672 1782 A
  2518. 2496(ch)S
  2519. 2622(|=)S
  2520. (IN_ESC;)294 2748 A
  2521. 2520 V
  2522. (12413)210 648 A
  2523. 2610 V
  2524. (12414)210 648 A
  2525. 1362(/*)S
  2526. (Map)126 1488 A
  2527. 1656(CR)S
  2528. 1782(to)S
  2529. (LF,)126 1908 A
  2530. (ignore)252 2076 A
  2531. (CR,)126 2370 A
  2532. 2538(or)S
  2533. (map)126 2664 A
  2534. 2832(LF)S
  2535. 2958(to)S
  2536. (CR.)126 3084 A
  2537. 3252(*/)S
  2538. 2700 V
  2539. (12415)210 648 A
  2540. 1362(if)S
  2541. ((ch)126 1488 A
  2542. 1656(==)S
  2543. ('\r'))210 1782 A
  2544. 2034({)S
  2545. 2790 V
  2546. (12416)210 648 A
  2547. 1698(if)S
  2548. ((tp->tty_termios.c_iflag)1008 1824 A
  2549. 2874(&)S
  2550. (IGNCR))252 2958 A
  2551. (continue;)378 3252 A
  2552. 2880 V
  2553. (12417)210 648 A
  2554. 1698(if)S
  2555. ((tp->tty_termios.c_iflag)1008 1824 A
  2556. 2874(&)S
  2557. (ICRNL))252 2958 A
  2558. 3252(ch)S
  2559. 3378(=)S
  2560. ('\n';)210 3462 A
  2561. 2970 V
  2562. (12418)210 648 A
  2563. 1362(})S
  2564. (else)168 1446 A
  2565. 3060 V
  2566. (12419)210 648 A
  2567. 1362(if)S
  2568. ((ch)126 1488 A
  2569. 1656(==)S
  2570. ('\n'))210 1782 A
  2571. 2034({)S
  2572. 3150 V
  2573. (12420)210 648 A
  2574. 1698(if)S
  2575. ((tp->tty_termios.c_iflag)1008 1824 A
  2576. 2874(&)S
  2577. (INLCR))252 2958 A
  2578. 3252(ch)S
  2579. 3378(=)S
  2580. ('\r';)210 3462 A
  2581. 3240 V
  2582. (12421)210 648 A
  2583. 1362(})S
  2584. 3330 V
  2585. (12422)210 648 A
  2586. 3420 V
  2587. (12423)210 648 A
  2588. 1362(/*)S
  2589. (Canonical)378 1488 A
  2590. (mode?)210 1908 A
  2591. 2160(*/)S
  2592. 3510 V
  2593. (12424)210 648 A
  2594. 1362(if)S
  2595. ((tp->tty_termios.c_lflag)1008 1488 A
  2596. 2538(&)S
  2597. (ICANON))294 2622 A
  2598. 2958({)S
  2599. 3600 V
  2600. (12425)210 648 A
  2601. 3690 V
  2602. (12426)210 648 A
  2603. 1698(/*)S
  2604. (Erase)210 1824 A
  2605. (processing)420 2076 A
  2606. ((rub)168 2538 A
  2607. (out)126 2748 A
  2608. 2916(of)S
  2609. (last)168 3042 A
  2610. (character).)462 3252 A
  2611. 3756(*/)S
  2612. 3780 V
  2613. (12427)210 648 A
  2614. 1698(if)S
  2615. ((ch)126 1824 A
  2616. 1992(==)S
  2617. (tp->tty_termios.c_cc[VERASE]))1218 2118 A
  2618. 3378({)S
  2619. 3870 V
  2620. (12428)210 648 A
  2621. ((void))252 2034 A
  2622. (back_over(tp);)588 2328 A
  2623. 3960 V
  2624. (12429)210 648 A
  2625. 2034(if)S
  2626. ((!(tp->tty_termios.c_lflag)1092 2160 A
  2627. 3294(&)S
  2628. (ECHOE)))294 3378 A
  2629. 3714({)S
  2630. 4050 V
  2631. (12430)210 648 A
  2632. ((void))252 2370 A
  2633. (echo(tp,)336 2664 A
  2634. (ch);)168 3042 A
  2635. 4140 V
  2636. (12431)210 648 A
  2637. 2034(})S
  2638. 4230 V
  2639. (12432)210 648 A
  2640. (continue;)378 2034 A
  2641. 4320 V
  2642. (12433)210 648 A
  2643. 1698(})S
  2644. 4410 V
  2645. (12434)210 648 A
  2646. 4500 V
  2647. (12435)210 648 A
  2648. 1698(/*)S
  2649. (Kill)168 1824 A
  2650. (processing)420 2034 A
  2651. ((remove)294 2496 A
  2652. (current)294 2832 A
  2653. (line).)252 3168 A
  2654. 3462(*/)S
  2655. 4590 V
  2656. (12436)210 648 A
  2657. 1698(if)S
  2658. ((ch)126 1824 A
  2659. 1992(==)S
  2660. (tp->tty_termios.c_cc[VKILL]))1176 2118 A
  2661. 3336({)S
  2662. 4680 V
  2663. (12437)210 648 A
  2664. (while)210 2034 A
  2665. ((back_over(tp)))630 2286 A
  2666. 2958({})S
  2667. 4770 V
  2668. (12438)210 648 A
  2669. 2034(if)S
  2670. ((!(tp->tty_termios.c_lflag)1092 2160 A
  2671. 3294(&)S
  2672. (ECHOE)))294 3378 A
  2673. 3714({)S
  2674. 4860 V
  2675. (12439)210 648 A
  2676. ((void))252 2370 A
  2677. (echo(tp,)336 2664 A
  2678. (ch);)168 3042 A
  2679. 4950 V
  2680. (12440)210 648 A
  2681. 2370(if)S
  2682. ((tp->tty_termios.c_lflag)1008 2496 A
  2683. 3546(&)S
  2684. (ECHOK))252 3630 A
  2685. 5040 V
  2686. (12441)210 648 A
  2687. (rawecho(tp,)462 2706 A
  2688. ('\n');)252 3210 A
  2689. 5130 V
  2690. (12442)210 648 A
  2691. 2034(})S
  2692. 5220 V
  2693. (12443)210 648 A
  2694. (continue;)378 2034 A
  2695. 5310 V
  2696. (12444)210 648 A
  2697. 1698(})S
  2698. 5400 V
  2699. (12445)210 648 A
  2700. 5490 V
  2701. (12446)210 648 A
  2702. 1698(/*)S
  2703. (EOF)126 1824 A
  2704. ((303D))168 1992 A
  2705. (means)210 2202 A
  2706. (end-of-file,)504 2454 A
  2707. 3000(an)S
  2708. (invisible)378 3126 A
  2709. ("line)210 3546 A
  2710. (break".)294 3798 A
  2711. 4134(*/)S
  2712. 5580 V
  2713. (12447)210 648 A
  2714. 1698(if)S
  2715. ((ch)126 1824 A
  2716. 1992(==)S
  2717. (tp->tty_termios.c_cc[VEOF]))1134 2118 A
  2718. 3294(ch)S
  2719. 3420(|=)S
  2720. (IN_EOT)252 3546 A
  2721. 3840(|)S
  2722. (IN_EOF;)294 3924 A
  2723. 5670 V
  2724. (12448)210 648 A
  2725. 5760 V
  2726. (12449)210 648 A
  2727. 1698(/*)S
  2728. (The)126 1824 A
  2729. (line)168 1992 A
  2730. (may)126 2202 A
  2731. 2370(be)S
  2732. (returned)336 2496 A
  2733. 2874(to)S
  2734. (the)126 3000 A
  2735. (user)168 3168 A
  2736. (after)210 3378 A
  2737. 3630(an)S
  2738. (LF.)126 3756 A
  2739. 3924(*/)S
  2740. 5850 V
  2741. (12450)210 648 A
  2742. 1698(if)S
  2743. ((ch)126 1824 A
  2744. 1992(==)S
  2745. ('\n'))210 2118 A
  2746. 2370(ch)S
  2747. 2496(|=)S
  2748. (IN_EOT;)294 2622 A
  2749. 5940 V
  2750. (12451)210 648 A
  2751. 6030 V
  2752. (12452)210 648 A
  2753. 1698(/*)S
  2754. (Same)168 1824 A
  2755. (thing)210 2034 A
  2756. (with)168 2286 A
  2757. (EOL,)168 2496 A
  2758. (whatever)336 2706 A
  2759. 3084(it)S
  2760. (may)126 3210 A
  2761. (be.)126 3378 A
  2762. 3546(*/)S
  2763. 6120 V
  2764. (12453)210 648 A
  2765. 1698(if)S
  2766. ((ch)126 1824 A
  2767. 1992(==)S
  2768. (tp->tty_termios.c_cc[VEOL]))1134 2118 A
  2769. 3294(ch)S
  2770. 3420(|=)S
  2771. (IN_EOT;)294 3546 A
  2772. 6210 V
  2773. (12454)210 648 A
  2774. 1362(})S
  2775. 8418 V
  2776. EP
  2777. %%Page: 168 168
  2778. BP
  2779. /slant 0 def
  2780. /height 0 def
  2781. 630 V
  2782. 12 B
  2783. (168)180 648 A
  2784. 11 R
  2785. 2089(File:)S
  2786. (src/kernel/tty.c)665 2322 A
  2787. 10 R
  2788. 3402(MINIX)S
  2789. 3730(SOURCE)S
  2790. 4153(CODE)S
  2791. 900 V
  2792. 7 LST
  2793. (12455)210 648 A
  2794. 990 V
  2795. (12456)210 648 A
  2796. 1362(/*)S
  2797. (Start/stop)420 1488 A
  2798. (input)210 1950 A
  2799. (control?)336 2202 A
  2800. 2580(*/)S
  2801. 1080 V
  2802. (12457)210 648 A
  2803. 1362(if)S
  2804. ((tp->tty_termios.c_iflag)1008 1488 A
  2805. 2538(&)S
  2806. (IXON))210 2622 A
  2807. 2874({)S
  2808. 1170 V
  2809. (12458)210 648 A
  2810. 1260 V
  2811. (12459)210 648 A
  2812. 1698(/*)S
  2813. (Output)252 1824 A
  2814. (stops)210 2118 A
  2815. 2370(on)S
  2816. (STOP)168 2496 A
  2817. ((303S).)210 2706 A
  2818. 2958(*/)S
  2819. 1350 V
  2820. (12460)210 648 A
  2821. 1698(if)S
  2822. ((ch)126 1824 A
  2823. 1992(==)S
  2824. (tp->tty_termios.c_cc[VSTOP]))1176 2118 A
  2825. 3336({)S
  2826. 1440 V
  2827. (12461)210 648 A
  2828. (tp->tty_inhibited)714 2034 A
  2829. 2790(=)S
  2830. (STOPPED;)336 2874 A
  2831. 1530 V
  2832. (12462)210 648 A
  2833. (tp->tty_events)588 2034 A
  2834. 2664(=)S
  2835. 2748(1;)S
  2836. 1620 V
  2837. (12463)210 648 A
  2838. (continue;)378 2034 A
  2839. 1710 V
  2840. (12464)210 648 A
  2841. 1698(})S
  2842. 1800 V
  2843. (12465)210 648 A
  2844. 1890 V
  2845. (12466)210 648 A
  2846. 1698(/*)S
  2847. (Output)252 1824 A
  2848. (restarts)336 2118 A
  2849. 2496(on)S
  2850. (START)210 2622 A
  2851. ((303Q))168 2874 A
  2852. 3084(or)S
  2853. (any)126 3210 A
  2854. (character)378 3378 A
  2855. 3798(if)S
  2856. (IXANY.)252 3924 A
  2857. 4218(*/)S
  2858. 1980 V
  2859. (12467)210 648 A
  2860. 1698(if)S
  2861. ((tp->tty_inhibited))798 1824 A
  2862. 2664({)S
  2863. 2070 V
  2864. (12468)210 648 A
  2865. 2034(if)S
  2866. ((ch)126 2160 A
  2867. 2328(==)S
  2868. (tp->tty_termios.c_cc[VSTART])1176 2454 A
  2869. 2160 V
  2870. (12469)210 648 A
  2871. 2706(||)S
  2872. ((tp->tty_termios.c_iflag)1008 2832 A
  2873. 3882(&)S
  2874. (IXANY)))294 3966 A
  2875. 4302({)S
  2876. 2250 V
  2877. (12470)210 648 A
  2878. (tp->tty_inhibited)714 2370 A
  2879. 3126(=)S
  2880. (RUNNING;)336 3210 A
  2881. 2340 V
  2882. (12471)210 648 A
  2883. (tp->tty_events)588 2370 A
  2884. 3000(=)S
  2885. 3084(1;)S
  2886. 2430 V
  2887. (12472)210 648 A
  2888. 2370(if)S
  2889. ((ch)126 2496 A
  2890. 2664(==)S
  2891. (tp->tty_termios.c_cc[VSTART]))1218 2790 A
  2892. 2520 V
  2893. (12473)210 648 A
  2894. (continue;)378 2706 A
  2895. 2610 V
  2896. (12474)210 648 A
  2897. 2034(})S
  2898. 2700 V
  2899. (12475)210 648 A
  2900. 1698(})S
  2901. 2790 V
  2902. (12476)210 648 A
  2903. 1362(})S
  2904. 2880 V
  2905. (12477)210 648 A
  2906. 2970 V
  2907. (12478)210 648 A
  2908. 1362(if)S
  2909. ((tp->tty_termios.c_lflag)1008 1488 A
  2910. 2538(&)S
  2911. (ISIG))210 2622 A
  2912. 2874({)S
  2913. 3060 V
  2914. (12479)210 648 A
  2915. 1698(/*)S
  2916. (Check)210 1824 A
  2917. (for)126 2076 A
  2918. (INTR)168 2244 A
  2919. ((303?))168 2454 A
  2920. (and)126 2664 A
  2921. (QUIT)168 2832 A
  2922. ((303\))168 3042 A
  2923. (characters.)462 3252 A
  2924. 3756(*/)S
  2925. 3150 V
  2926. (12480)210 648 A
  2927. 1698(if)S
  2928. ((ch)126 1824 A
  2929. 1992(==)S
  2930. (tp->tty_termios.c_cc[VINTR])1134 2118 A
  2931. 3240 V
  2932. (12481)210 648 A
  2933. 2706(||)S
  2934. 2832(ch)S
  2935. 2958(==)S
  2936. (tp->tty_termios.c_cc[VQUIT]))1176 3084 A
  2937. 4302({)S
  2938. 3330 V
  2939. (12482)210 648 A
  2940. (sig)126 2034 A
  2941. 2202(=)S
  2942. (SIGINT;)294 2286 A
  2943. 3420 V
  2944. (12483)210 648 A
  2945. 2034(if)S
  2946. ((ch)126 2160 A
  2947. 2328(==)S
  2948. (tp->tty_termios.c_cc[VQUIT]))1176 2454 A
  2949. (sig)126 3672 A
  2950. 3840(=)S
  2951. (SIGQUIT;)336 3924 A
  2952. 3510 V
  2953. (12484)210 648 A
  2954. (sigchar(tp,)462 2034 A
  2955. (sig);)210 2538 A
  2956. 3600 V
  2957. (12485)210 648 A
  2958. ((void))252 2034 A
  2959. (echo(tp,)336 2328 A
  2960. (ch);)168 2706 A
  2961. 3690 V
  2962. (12486)210 648 A
  2963. (continue;)378 2034 A
  2964. 3780 V
  2965. (12487)210 648 A
  2966. 1698(})S
  2967. 3870 V
  2968. (12488)210 648 A
  2969. 1362(})S
  2970. 3960 V
  2971. (12489)210 648 A
  2972. 4050 V
  2973. (12490)210 648 A
  2974. 1362(/*)S
  2975. 1488(Is)S
  2976. (there)210 1614 A
  2977. (space)210 1866 A
  2978. 2118(in)S
  2979. (the)126 2244 A
  2980. (input)210 2412 A
  2981. (buffer?)294 2664 A
  2982. 3000(*/)S
  2983. 4140 V
  2984. (12491)210 648 A
  2985. 1362(if)S
  2986. ((tp->tty_incount)672 1488 A
  2987. 2202(==)S
  2988. (buflen(tp->tty_inbuf)))924 2328 A
  2989. 3294({)S
  2990. 4230 V
  2991. (12492)210 648 A
  2992. 1698(/*)S
  2993. 1824(No)S
  2994. (space;)252 1950 A
  2995. (discard)294 2244 A
  2996. 2580(in)S
  2997. (canonical)378 2706 A
  2998. (mode,)210 3126 A
  2999. (keep)168 3378 A
  3000. 3588(in)S
  3001. (raw)126 3714 A
  3002. (mode.)210 3882 A
  3003. 4134(*/)S
  3004. 4320 V
  3005. (12493)210 648 A
  3006. 1698(if)S
  3007. ((tp->tty_termios.c_lflag)1008 1824 A
  3008. 2874(&)S
  3009. (ICANON))294 2958 A
  3010. (continue;)378 3294 A
  3011. 4410 V
  3012. (12494)210 648 A
  3013. (break;)252 1698 A
  3014. 4500 V
  3015. (12495)210 648 A
  3016. 1362(})S
  3017. 4590 V
  3018. (12496)210 648 A
  3019. 4680 V
  3020. (12497)210 648 A
  3021. 1362(if)S
  3022. ((!(tp->tty_termios.c_lflag)1092 1488 A
  3023. 2622(&)S
  3024. (ICANON)))336 2706 A
  3025. 3084({)S
  3026. 4770 V
  3027. (12498)210 648 A
  3028. 1698(/*)S
  3029. 1824(In)S
  3030. (raw)126 1950 A
  3031. (mode)168 2118 A
  3032. (all)126 2328 A
  3033. (characters)420 2496 A
  3034. (are)126 2958 A
  3035. ("line)210 3126 A
  3036. (breaks".)336 3378 A
  3037. 3756(*/)S
  3038. 4860 V
  3039. (12499)210 648 A
  3040. 1698(ch)S
  3041. 1824(|=)S
  3042. (IN_EOT;)294 1950 A
  3043. 4950 V
  3044. (12500)210 648 A
  3045. 5040 V
  3046. (12501)210 648 A
  3047. 1698(/*)S
  3048. (Start)210 1824 A
  3049. 2076(an)S
  3050. (inter-byte)420 2202 A
  3051. (timer?)252 2664 A
  3052. 2958(*/)S
  3053. 5130 V
  3054. (12502)210 648 A
  3055. 1698(if)S
  3056. ((!timeset)378 1824 A
  3057. 2244(&&)S
  3058. (tp->tty_termios.c_cc[VMIN])1092 2370 A
  3059. 3504(>)S
  3060. 3588(0)S
  3061. 5220 V
  3062. (12503)210 648 A
  3063. 2370(&&)S
  3064. (tp->tty_termios.c_cc[VTIME])1134 2496 A
  3065. 3672(>)S
  3066. 3756(0))S
  3067. 3882({)S
  3068. 5310 V
  3069. (12504)210 648 A
  3070. (lock();)294 2034 A
  3071. 5400 V
  3072. (12505)210 648 A
  3073. (settimer(tp,)504 2034 A
  3074. (TRUE);)252 2580 A
  3075. 5490 V
  3076. (12506)210 648 A
  3077. (unlock();)378 2034 A
  3078. 5580 V
  3079. (12507)210 648 A
  3080. (timeset)294 2034 A
  3081. 2370(=)S
  3082. (TRUE;)210 2454 A
  3083. 5670 V
  3084. (12508)210 648 A
  3085. 1698(})S
  3086. 5760 V
  3087. (12509)210 648 A
  3088. 1362(})S
  3089. 5850 V
  3090. (12510)210 648 A
  3091. 5940 V
  3092. (12511)210 648 A
  3093. 1362(/*)S
  3094. (Perform)294 1488 A
  3095. (the)126 1824 A
  3096. (intricate)378 1992 A
  3097. (function)336 2412 A
  3098. 2790(of)S
  3099. (echoing.)336 2916 A
  3100. 3294(*/)S
  3101. 6030 V
  3102. (12512)210 648 A
  3103. 1362(if)S
  3104. ((tp->tty_termios.c_lflag)1008 1488 A
  3105. 2538(&)S
  3106. ((ECHO|ECHONL)))588 2622 A
  3107. 3252(ch)S
  3108. 3378(=)S
  3109. (echo(tp,)336 3462 A
  3110. (ch);)168 3840 A
  3111. 6120 V
  3112. (12513)210 648 A
  3113. 6210 V
  3114. (12514)210 648 A
  3115. 1362(/*)S
  3116. (Save)168 1488 A
  3117. (the)126 1698 A
  3118. (character)378 1866 A
  3119. 2286(in)S
  3120. (the)126 2412 A
  3121. (input)210 2580 A
  3122. (queue.)252 2832 A
  3123. 3126(*/)S
  3124. 8418 V
  3125. EP
  3126. %%Page: 169 169
  3127. BP
  3128. /slant 0 def
  3129. /height 0 def
  3130. 630 V
  3131. 10 R
  3132. 648(MINIX)S
  3133. 976(SOURCE)S
  3134. 1399(CODE)S
  3135. 11 R
  3136. 2089(File:)S
  3137. (src/kernel/tty.c)665 2322 A
  3138. 12 B
  3139. (169)180 4248 A
  3140. 900 V
  3141. 7 LST
  3142. (12515)210 648 A
  3143. (*tp->tty_inhead++)714 1362 A
  3144. 2118(=)S
  3145. (ch;)126 2202 A
  3146. 990 V
  3147. (12516)210 648 A
  3148. 1362(if)S
  3149. ((tp->tty_inhead)630 1488 A
  3150. 2160(==)S
  3151. (bufend(tp->tty_inbuf)))924 2286 A
  3152. 1080 V
  3153. (12517)210 648 A
  3154. (tp->tty_inhead)588 1698 A
  3155. 2328(=)S
  3156. (tp->tty_inbuf;)588 2412 A
  3157. 1170 V
  3158. (12518)210 648 A
  3159. (tp->tty_incount++;)756 1362 A
  3160. 1260 V
  3161. (12519)210 648 A
  3162. 1362(if)S
  3163. ((ch)126 1488 A
  3164. 1656(&)S
  3165. (IN_EOT))294 1740 A
  3166. (tp->tty_eotct++;)672 2076 A
  3167. 1350 V
  3168. (12520)210 648 A
  3169. 1440 V
  3170. (12521)210 648 A
  3171. 1362(/*)S
  3172. (Try)126 1488 A
  3173. 1656(to)S
  3174. (finish)252 1782 A
  3175. (input)210 2076 A
  3176. 2328(if)S
  3177. (the)126 2454 A
  3178. (queue)210 2622 A
  3179. (threatens)378 2874 A
  3180. 3294(to)S
  3181. (overflow.)378 3420 A
  3182. 3840(*/)S
  3183. 1530 V
  3184. (12522)210 648 A
  3185. 1362(if)S
  3186. ((tp->tty_incount)672 1488 A
  3187. 2202(==)S
  3188. (buflen(tp->tty_inbuf)))924 2328 A
  3189. (in_transfer(tp);)672 3294 A
  3190. 1620 V
  3191. (12523)210 648 A
  3192. 1110(})S
  3193. 1710 V
  3194. (12524)210 648 A
  3195. (return)252 1110 A
  3196. (ct;)126 1404 A
  3197. 1800 V
  3198. (12525)210 648 A
  3199. 1026(})S
  3200. 2070 V
  3201. (12528)210 648 A
  3202. (/*===========================================================================*)3276 1026 A
  3203. 2160 V
  3204. (12529)210 648 A
  3205. 1068(*)S
  3206. (echo)168 2370 A
  3207. 4260(*)S
  3208. 2250 V
  3209. (12530)210 648 A
  3210. (*===========================================================================*/)3276 1068 A
  3211. 2340 V
  3212. (12531)210 648 A
  3213. (PRIVATE)294 1026 A
  3214. (int)126 1362 A
  3215. (echo(tp,)336 1530 A
  3216. (ch))126 1908 A
  3217. 2430 V
  3218. (12532)210 648 A
  3219. (register)336 1026 A
  3220. (tty_t)210 1404 A
  3221. (*tp;)168 1656 A
  3222. 2370(/*)S
  3223. (terminal)336 2496 A
  3224. 2874(on)S
  3225. (which)210 3000 A
  3226. 3252(to)S
  3227. (echo)168 3378 A
  3228. 3588(*/)S
  3229. 2520 V
  3230. (12533)210 648 A
  3231. (register)336 1026 A
  3232. (int)126 1404 A
  3233. (ch;)126 1572 A
  3234. 2370(/*)S
  3235. (pointer)294 2496 A
  3236. 2832(to)S
  3237. (character)378 2958 A
  3238. 3378(to)S
  3239. (echo)168 3504 A
  3240. 3714(*/)S
  3241. 2610 V
  3242. (12534)210 648 A
  3243. 1026({)S
  3244. 2700 V
  3245. (12535)210 648 A
  3246. 1026(/*)S
  3247. (Echo)168 1152 A
  3248. (the)126 1362 A
  3249. (character)378 1530 A
  3250. 1950(if)S
  3251. (echoing)294 2076 A
  3252. 2412(is)S
  3253. (on.)126 2538 A
  3254. (Some)168 2748 A
  3255. (control)294 2958 A
  3256. (characters)420 3294 A
  3257. (are)126 3756 A
  3258. (echoed)252 3924 A
  3259. 2790 V
  3260. (12536)210 648 A
  3261. 1068(*)S
  3262. (with)168 1152 A
  3263. (their)210 1362 A
  3264. (normal)252 1614 A
  3265. (effect,)294 1908 A
  3266. (other)210 2244 A
  3267. (control)294 2496 A
  3268. (characters)420 2832 A
  3269. (are)126 3294 A
  3270. (echoed)252 3462 A
  3271. 3756(as)S
  3272. ("303X",)210 3882 A
  3273. 2880 V
  3274. (12537)210 648 A
  3275. 1068(*)S
  3276. (normal)252 1152 A
  3277. (characters)420 1446 A
  3278. (are)126 1908 A
  3279. (echoed)252 2076 A
  3280. (normally.)378 2370 A
  3281. (EOF)126 2832 A
  3282. ((303D))168 3000 A
  3283. 3210(is)S
  3284. (echoed,)294 3336 A
  3285. (but)126 3672 A
  3286. (immediately)462 3840 A
  3287. 2970 V
  3288. (12538)210 648 A
  3289. 1068(*)S
  3290. (backspaced)420 1152 A
  3291. (over.)210 1614 A
  3292. (Return)252 1908 A
  3293. (the)126 2202 A
  3294. (character)378 2370 A
  3295. (with)168 2790 A
  3296. (the)126 3000 A
  3297. (echoed)252 3168 A
  3298. (length)252 3462 A
  3299. (added)210 3756 A
  3300. 4008(to)S
  3301. (its)126 4134 A
  3302. 3060 V
  3303. (12539)210 648 A
  3304. 1068(*)S
  3305. (attributes.)462 1152 A
  3306. 3150 V
  3307. (12540)210 648 A
  3308. 1068(*/)S
  3309. 3240 V
  3310. (12541)210 648 A
  3311. (int)126 1110 A
  3312. (len,)168 1278 A
  3313. (rp;)126 1488 A
  3314. 3330 V
  3315. (12542)210 648 A
  3316. 3420 V
  3317. (12543)210 648 A
  3318. 1110(ch)S
  3319. 1236(&=)S
  3320. (304IN_LEN;)336 1362 A
  3321. 3510 V
  3322. (12544)210 648 A
  3323. 1110(if)S
  3324. ((!(tp->tty_termios.c_lflag)1092 1236 A
  3325. 2370(&)S
  3326. (ECHO)))252 2454 A
  3327. 2748({)S
  3328. 3600 V
  3329. (12545)210 648 A
  3330. 1362(if)S
  3331. ((ch)126 1488 A
  3332. 1656(==)S
  3333. (('\n')210 1782 A
  3334. 2034(|)S
  3335. (IN_EOT))294 2118 A
  3336. 2454(&&)S
  3337. ((tp->tty_termios.c_lflag)1008 2580 A
  3338. 3690 V
  3339. (12546)210 648 A
  3340. 2706(&)S
  3341. ((ICANON|ECHONL)))672 2790 A
  3342. 3504(==)S
  3343. ((ICANON|ECHONL)))672 3630 A
  3344. 3780 V
  3345. (12547)210 648 A
  3346. ((*tp->tty_echo)(tp,)798 1698 A
  3347. ('\n');)252 2538 A
  3348. 3870 V
  3349. (12548)210 648 A
  3350. (return(ch);)462 1362 A
  3351. 3960 V
  3352. (12549)210 648 A
  3353. 1110(})S
  3354. 4050 V
  3355. (12550)210 648 A
  3356. 4140 V
  3357. (12551)210 648 A
  3358. 1110(/*)S
  3359. ("Reprint")378 1236 A
  3360. (tells)210 1656 A
  3361. 1908(if)S
  3362. (the)126 2034 A
  3363. (echo)168 2202 A
  3364. (output)252 2412 A
  3365. (has)126 2706 A
  3366. (been)168 2874 A
  3367. (messed)252 3084 A
  3368. 3378(up)S
  3369. 3504(by)S
  3370. (other)210 3630 A
  3371. (output.)294 3882 A
  3372. 4218(*/)S
  3373. 4230 V
  3374. (12552)210 648 A
  3375. 1110(rp)S
  3376. 1236(=)S
  3377. (tp->tty_incount)630 1320 A
  3378. 1992(==)S
  3379. 2118(0)S
  3380. 2202(?)S
  3381. (FALSE)210 2286 A
  3382. 2538(:)S
  3383. (tp->tty_reprint;)672 2622 A
  3384. 4320 V
  3385. (12553)210 648 A
  3386. 4410 V
  3387. (12554)210 648 A
  3388. 1110(if)S
  3389. (((ch)168 1236 A
  3390. 1446(&)S
  3391. (IN_CHAR))336 1530 A
  3392. 1908(<)S
  3393. 1992(')S
  3394. 2076('))S
  3395. 2202({)S
  3396. 4500 V
  3397. (12555)210 648 A
  3398. (switch)252 1362 A
  3399. ((ch)126 1656 A
  3400. 1824(&)S
  3401. ((IN_ESC|IN_EOF|IN_EOT|IN_CHAR)))1302 1908 A
  3402. 3252({)S
  3403. 4590 V
  3404. (12556)210 648 A
  3405. (case)168 1530 A
  3406. ('\t':)210 1740 A
  3407. 4680 V
  3408. (12557)210 648 A
  3409. (len)126 1698 A
  3410. 1866(=)S
  3411. 1950(0;)S
  3412. 4770 V
  3413. (12558)210 648 A
  3414. 1698(do)S
  3415. 1824({)S
  3416. 4860 V
  3417. (12559)210 648 A
  3418. ((*tp->tty_echo)(tp,)798 2034 A
  3419. 2874(')S
  3420. (');)126 2958 A
  3421. 4950 V
  3422. (12560)210 648 A
  3423. (len++;)252 2034 A
  3424. 5040 V
  3425. (12561)210 648 A
  3426. 1698(})S
  3427. (while)210 1782 A
  3428. ((len)168 2034 A
  3429. 2244(<)S
  3430. (TAB_SIZE)336 2328 A
  3431. 2706(&&)S
  3432. ((tp->tty_position)714 2832 A
  3433. 3588(&)S
  3434. (TAB_MASK))378 3672 A
  3435. 4092(!=)S
  3436. (0);)126 4218 A
  3437. 5130 V
  3438. (12562)210 648 A
  3439. (break;)252 1698 A
  3440. 5220 V
  3441. (12563)210 648 A
  3442. (case)168 1530 A
  3443. ('\r')168 1740 A
  3444. 1950(|)S
  3445. (IN_EOT:)294 2034 A
  3446. 5310 V
  3447. (12564)210 648 A
  3448. (case)168 1530 A
  3449. ('\n')168 1740 A
  3450. 1950(|)S
  3451. (IN_EOT:)294 2034 A
  3452. 5400 V
  3453. (12565)210 648 A
  3454. ((*tp->tty_echo)(tp,)798 1698 A
  3455. 2538(ch)S
  3456. 2664(&)S
  3457. (IN_CHAR);)378 2748 A
  3458. 5490 V
  3459. (12566)210 648 A
  3460. (len)126 1698 A
  3461. 1866(=)S
  3462. 1950(0;)S
  3463. 5580 V
  3464. (12567)210 648 A
  3465. (break;)252 1698 A
  3466. 5670 V
  3467. (12568)210 648 A
  3468. (default:)336 1530 A
  3469. 5760 V
  3470. (12569)210 648 A
  3471. ((*tp->tty_echo)(tp,)798 1698 A
  3472. ('303');)210 2538 A
  3473. 5850 V
  3474. (12570)210 648 A
  3475. ((*tp->tty_echo)(tp,)798 1698 A
  3476. ('@')126 2538 A
  3477. 2706(+)S
  3478. ((ch)126 2790 A
  3479. 2958(&)S
  3480. (IN_CHAR));)420 3042 A
  3481. 5940 V
  3482. (12571)210 648 A
  3483. (len)126 1698 A
  3484. 1866(=)S
  3485. 1950(2;)S
  3486. 6030 V
  3487. (12572)210 648 A
  3488. 1362(})S
  3489. 6120 V
  3490. (12573)210 648 A
  3491. 1110(})S
  3492. (else)168 1194 A
  3493. 6210 V
  3494. (12574)210 648 A
  3495. 1110(if)S
  3496. (((ch)168 1236 A
  3497. 1446(&)S
  3498. (IN_CHAR))336 1530 A
  3499. 1908(==)S
  3500. ('\177'))294 2034 A
  3501. 2370({)S
  3502. 8418 V
  3503. EP
  3504. %%Page: 170 170
  3505. BP
  3506. /slant 0 def
  3507. /height 0 def
  3508. 630 V
  3509. 12 B
  3510. (170)180 648 A
  3511. 11 R
  3512. 2089(File:)S
  3513. (src/kernel/tty.c)665 2322 A
  3514. 10 R
  3515. 3402(MINIX)S
  3516. 3730(SOURCE)S
  3517. 4153(CODE)S
  3518. 900 V
  3519. 7 LST
  3520. (12575)210 648 A
  3521. 1362(/*)S
  3522. 1488(A)S
  3523. (DEL)126 1572 A
  3524. (prints)252 1740 A
  3525. 2034(as)S
  3526. ("303?".)210 2160 A
  3527. 2412(*/)S
  3528. 990 V
  3529. (12576)210 648 A
  3530. ((*tp->tty_echo)(tp,)798 1362 A
  3531. ('303');)210 2202 A
  3532. 1080 V
  3533. (12577)210 648 A
  3534. ((*tp->tty_echo)(tp,)798 1362 A
  3535. ('?');)210 2202 A
  3536. 1170 V
  3537. (12578)210 648 A
  3538. (len)126 1362 A
  3539. 1530(=)S
  3540. 1614(2;)S
  3541. 1260 V
  3542. (12579)210 648 A
  3543. 1110(})S
  3544. (else)168 1194 A
  3545. 1404({)S
  3546. 1350 V
  3547. (12580)210 648 A
  3548. ((*tp->tty_echo)(tp,)798 1362 A
  3549. 2202(ch)S
  3550. 2328(&)S
  3551. (IN_CHAR);)378 2412 A
  3552. 1440 V
  3553. (12581)210 648 A
  3554. (len)126 1362 A
  3555. 1530(=)S
  3556. 1614(1;)S
  3557. 1530 V
  3558. (12582)210 648 A
  3559. 1110(})S
  3560. 1620 V
  3561. (12583)210 648 A
  3562. 1110(if)S
  3563. ((ch)126 1236 A
  3564. 1404(&)S
  3565. (IN_EOF))294 1488 A
  3566. (while)210 1824 A
  3567. ((len)168 2076 A
  3568. 2286(>)S
  3569. 2370(0))S
  3570. 2496({)S
  3571. ((*tp->tty_echo)(tp,)798 2580 A
  3572. ('\b');)252 3420 A
  3573. (len--;)252 3714 A
  3574. 4008(})S
  3575. 1710 V
  3576. (12584)210 648 A
  3577. 1800 V
  3578. (12585)210 648 A
  3579. (tp->tty_reprint)630 1110 A
  3580. 1782(=)S
  3581. (rp;)126 1866 A
  3582. 1890 V
  3583. (12586)210 648 A
  3584. (return(ch)378 1110 A
  3585. 1530(|)S
  3586. ((len)168 1614 A
  3587. 1824(<<)S
  3588. (IN_LSHIFT));)504 1950 A
  3589. 1980 V
  3590. (12587)210 648 A
  3591. 1026(})S
  3592. 2250 V
  3593. (12590)210 648 A
  3594. (/*==========================================================================*)3234 1026 A
  3595. 2340 V
  3596. (12591)210 648 A
  3597. 1068(*)S
  3598. (rawecho)294 2370 A
  3599. 4218(*)S
  3600. 2430 V
  3601. (12592)210 648 A
  3602. (*==========================================================================*/)3234 1068 A
  3603. 2520 V
  3604. (12593)210 648 A
  3605. (PRIVATE)294 1026 A
  3606. (void)168 1362 A
  3607. (rawecho(tp,)462 1572 A
  3608. (ch))126 2076 A
  3609. 2610 V
  3610. (12594)210 648 A
  3611. (register)336 1026 A
  3612. (tty_t)210 1404 A
  3613. (*tp;)168 1656 A
  3614. 2700 V
  3615. (12595)210 648 A
  3616. (int)126 1026 A
  3617. (ch;)126 1194 A
  3618. 2790 V
  3619. (12596)210 648 A
  3620. 1026({)S
  3621. 2880 V
  3622. (12597)210 648 A
  3623. 1026(/*)S
  3624. (Echo)168 1152 A
  3625. (without)294 1362 A
  3626. (interpretation)588 1698 A
  3627. 2328(if)S
  3628. (ECHO)168 2454 A
  3629. 2664(is)S
  3630. (set.)168 2790 A
  3631. 3000(*/)S
  3632. 2970 V
  3633. (12598)210 648 A
  3634. (int)126 1110 A
  3635. 1278(rp)S
  3636. 1404(=)S
  3637. (tp->tty_reprint;)672 1488 A
  3638. 3060 V
  3639. (12599)210 648 A
  3640. 1110(if)S
  3641. ((tp->tty_termios.c_lflag)1008 1236 A
  3642. 2286(&)S
  3643. (ECHO))210 2370 A
  3644. ((*tp->tty_echo)(tp,)798 2622 A
  3645. (ch);)168 3462 A
  3646. 3150 V
  3647. (12600)210 648 A
  3648. (tp->tty_reprint)630 1110 A
  3649. 1782(=)S
  3650. (rp;)126 1866 A
  3651. 3240 V
  3652. (12601)210 648 A
  3653. 1026(})S
  3654. 3510 V
  3655. (12604)210 648 A
  3656. (/*==========================================================================*)3234 1026 A
  3657. 3600 V
  3658. (12605)210 648 A
  3659. 1068(*)S
  3660. (back_over)378 2370 A
  3661. 4218(*)S
  3662. 3690 V
  3663. (12606)210 648 A
  3664. (*==========================================================================*/)3234 1068 A
  3665. 3780 V
  3666. (12607)210 648 A
  3667. (PRIVATE)294 1026 A
  3668. (int)126 1362 A
  3669. (back_over(tp))546 1530 A
  3670. 3870 V
  3671. (12608)210 648 A
  3672. (register)336 1026 A
  3673. (tty_t)210 1404 A
  3674. (*tp;)168 1656 A
  3675. 3960 V
  3676. (12609)210 648 A
  3677. 1026({)S
  3678. 4050 V
  3679. (12610)210 648 A
  3680. 1026(/*)S
  3681. (Backspace)378 1152 A
  3682. 1572(to)S
  3683. (previous)336 1698 A
  3684. (character)378 2076 A
  3685. 2496(on)S
  3686. (screen)252 2622 A
  3687. (and)126 2916 A
  3688. (erase)210 3084 A
  3689. (it.)126 3336 A
  3690. 3504(*/)S
  3691. 4140 V
  3692. (12611)210 648 A
  3693. (u16_t)210 1110 A
  3694. (*head;)252 1362 A
  3695. 4230 V
  3696. (12612)210 648 A
  3697. (int)126 1110 A
  3698. (len;)168 1278 A
  3699. 4320 V
  3700. (12613)210 648 A
  3701. 4410 V
  3702. (12614)210 648 A
  3703. 1110(if)S
  3704. ((tp->tty_incount)672 1236 A
  3705. 1950(==)S
  3706. 2076(0))S
  3707. (return(0);)420 2202 A
  3708. 2706(/*)S
  3709. (queue)210 2832 A
  3710. (empty)210 3084 A
  3711. 3336(*/)S
  3712. 4500 V
  3713. (12615)210 648 A
  3714. (head)168 1110 A
  3715. 1320(=)S
  3716. (tp->tty_inhead;)630 1404 A
  3717. 4590 V
  3718. (12616)210 648 A
  3719. 1110(if)S
  3720. ((head)210 1236 A
  3721. 1488(==)S
  3722. (tp->tty_inbuf))588 1614 A
  3723. (head)168 2244 A
  3724. 2454(=)S
  3725. (bufend(tp->tty_inbuf);)924 2538 A
  3726. 4680 V
  3727. (12617)210 648 A
  3728. 1110(if)S
  3729. ((*--head)336 1236 A
  3730. 1614(&)S
  3731. (IN_EOT))294 1698 A
  3732. (return(0);)420 2034 A
  3733. 3042(/*)S
  3734. (can't)210 3168 A
  3735. (erase)210 3420 A
  3736. ("line)210 3672 A
  3737. (breaks")294 3924 A
  3738. 4260(*/)S
  3739. 4770 V
  3740. (12618)210 648 A
  3741. 1110(if)S
  3742. ((tp->tty_reprint))714 1236 A
  3743. (reprint(tp);)504 1992 A
  3744. 3042(/*)S
  3745. (reprint)294 3168 A
  3746. 3504(if)S
  3747. (messed)252 3630 A
  3748. 3924(up)S
  3749. 4050(*/)S
  3750. 4860 V
  3751. (12619)210 648 A
  3752. (tp->tty_inhead)588 1110 A
  3753. 1740(=)S
  3754. (head;)210 1824 A
  3755. 4950 V
  3756. (12620)210 648 A
  3757. (tp->tty_incount--;)756 1110 A
  3758. 5040 V
  3759. (12621)210 648 A
  3760. 1110(if)S
  3761. ((tp->tty_termios.c_lflag)1008 1236 A
  3762. 2286(&)S
  3763. (ECHOE))252 2370 A
  3764. 2664({)S
  3765. 5130 V
  3766. (12622)210 648 A
  3767. (len)126 1362 A
  3768. 1530(=)S
  3769. ((*head)252 1614 A
  3770. 1908(&)S
  3771. (IN_LEN))294 1992 A
  3772. 2328(>>)S
  3773. (IN_LSHIFT;)420 2454 A
  3774. 5220 V
  3775. (12623)210 648 A
  3776. (while)210 1362 A
  3777. ((len)168 1614 A
  3778. 1824(>)S
  3779. 1908(0))S
  3780. 2034({)S
  3781. 5310 V
  3782. (12624)210 648 A
  3783. (rawecho(tp,)462 1698 A
  3784. ('\b');)252 2202 A
  3785. 5400 V
  3786. (12625)210 648 A
  3787. (rawecho(tp,)462 1698 A
  3788. 2202(')S
  3789. (');)126 2286 A
  3790. 5490 V
  3791. (12626)210 648 A
  3792. (rawecho(tp,)462 1698 A
  3793. ('\b');)252 2202 A
  3794. 5580 V
  3795. (12627)210 648 A
  3796. (len--;)252 1698 A
  3797. 5670 V
  3798. (12628)210 648 A
  3799. 1362(})S
  3800. 5760 V
  3801. (12629)210 648 A
  3802. 1110(})S
  3803. 5850 V
  3804. (12630)210 648 A
  3805. (return(1);)420 1110 A
  3806. 2706(/*)S
  3807. (one)126 2832 A
  3808. (character)378 3000 A
  3809. (erased)252 3420 A
  3810. 3714(*/)S
  3811. 5940 V
  3812. (12631)210 648 A
  3813. 1026(})S
  3814. 6210 V
  3815. (12634)210 648 A
  3816. (/*==========================================================================*)3234 1026 A
  3817. 8418 V
  3818. EP
  3819. %%Page: 171 171
  3820. BP
  3821. /slant 0 def
  3822. /height 0 def
  3823. 630 V
  3824. 10 R
  3825. 648(MINIX)S
  3826. 976(SOURCE)S
  3827. 1399(CODE)S
  3828. 11 R
  3829. 2089(File:)S
  3830. (src/kernel/tty.c)665 2322 A
  3831. 12 B
  3832. (171)180 4248 A
  3833. 900 V
  3834. 7 LST
  3835. (12635)210 648 A
  3836. 1068(*)S
  3837. (reprint)294 2370 A
  3838. 4218(*)S
  3839. 990 V
  3840. (12636)210 648 A
  3841. (*==========================================================================*/)3234 1068 A
  3842. 1080 V
  3843. (12637)210 648 A
  3844. (PRIVATE)294 1026 A
  3845. (void)168 1362 A
  3846. (reprint(tp))462 1572 A
  3847. 1170 V
  3848. (12638)210 648 A
  3849. (register)336 1026 A
  3850. (tty_t)210 1404 A
  3851. (*tp;)168 1656 A
  3852. 2370(/*)S
  3853. (pointer)294 2496 A
  3854. 2832(to)S
  3855. (tty)126 2958 A
  3856. (struct)252 3126 A
  3857. 3420(*/)S
  3858. 1260 V
  3859. (12639)210 648 A
  3860. 1026({)S
  3861. 1350 V
  3862. (12640)210 648 A
  3863. 1026(/*)S
  3864. (Restore)294 1152 A
  3865. (what)168 1488 A
  3866. (has)126 1698 A
  3867. (been)168 1866 A
  3868. (echoed)252 2076 A
  3869. 2370(to)S
  3870. (screen)252 2496 A
  3871. (before)252 2790 A
  3872. 3084(if)S
  3873. (the)126 3210 A
  3874. (user)168 3378 A
  3875. (input)210 3588 A
  3876. (has)126 3840 A
  3877. (been)168 4008 A
  3878. 1440 V
  3879. (12641)210 648 A
  3880. 1068(*)S
  3881. (messed)252 1152 A
  3882. 1446(up)S
  3883. 1572(by)S
  3884. (output,)294 1698 A
  3885. 2034(or)S
  3886. 2160(if)S
  3887. (REPRINT)294 2286 A
  3888. ((303R))168 2622 A
  3889. 2832(is)S
  3890. (typed.)252 2958 A
  3891. 1530 V
  3892. (12642)210 648 A
  3893. 1068(*/)S
  3894. 1620 V
  3895. (12643)210 648 A
  3896. (int)126 1110 A
  3897. (count;)252 1278 A
  3898. 1710 V
  3899. (12644)210 648 A
  3900. (u16_t)210 1110 A
  3901. (*head;)252 1362 A
  3902. 1800 V
  3903. (12645)210 648 A
  3904. 1890 V
  3905. (12646)210 648 A
  3906. (tp->tty_reprint)630 1110 A
  3907. 1782(=)S
  3908. (FALSE;)252 1866 A
  3909. 1980 V
  3910. (12647)210 648 A
  3911. 2070 V
  3912. (12648)210 648 A
  3913. 1110(/*)S
  3914. (Find)168 1236 A
  3915. (the)126 1446 A
  3916. (last)168 1614 A
  3917. (line)168 1824 A
  3918. (break)210 2034 A
  3919. 2286(in)S
  3920. (the)126 2412 A
  3921. (input.)252 2580 A
  3922. 2874(*/)S
  3923. 2160 V
  3924. (12649)210 648 A
  3925. (head)168 1110 A
  3926. 1320(=)S
  3927. (tp->tty_inhead;)630 1404 A
  3928. 2250 V
  3929. (12650)210 648 A
  3930. (count)210 1110 A
  3931. 1362(=)S
  3932. (tp->tty_incount;)672 1446 A
  3933. 2340 V
  3934. (12651)210 648 A
  3935. (while)210 1110 A
  3936. ((count)252 1362 A
  3937. 1656(>)S
  3938. 1740(0))S
  3939. 1866({)S
  3940. 2430 V
  3941. (12652)210 648 A
  3942. 1362(if)S
  3943. ((head)210 1488 A
  3944. 1740(==)S
  3945. (tp->tty_inbuf))588 1866 A
  3946. (head)168 2496 A
  3947. 2706(=)S
  3948. (bufend(tp->tty_inbuf);)924 2790 A
  3949. 2520 V
  3950. (12653)210 648 A
  3951. 1362(if)S
  3952. ((head[-1])378 1488 A
  3953. 1908(&)S
  3954. (IN_EOT))294 1992 A
  3955. (break;)252 2328 A
  3956. 2610 V
  3957. (12654)210 648 A
  3958. (head--;)294 1362 A
  3959. 2700 V
  3960. (12655)210 648 A
  3961. (count--;)336 1362 A
  3962. 2790 V
  3963. (12656)210 648 A
  3964. 1110(})S
  3965. 2880 V
  3966. (12657)210 648 A
  3967. 1110(if)S
  3968. ((count)252 1236 A
  3969. 1530(==)S
  3970. (tp->tty_incount))672 1656 A
  3971. (return;)294 2370 A
  3972. 3042(/*)S
  3973. 3168(no)S
  3974. (reason)252 3294 A
  3975. 3588(to)S
  3976. (reprint)294 3714 A
  3977. 4050(*/)S
  3978. 2970 V
  3979. (12658)210 648 A
  3980. 3060 V
  3981. (12659)210 648 A
  3982. 1110(/*)S
  3983. (Show)168 1236 A
  3984. (REPRINT)294 1446 A
  3985. ((303R))168 1782 A
  3986. (and)126 1992 A
  3987. (move)168 2160 A
  3988. 2370(to)S
  3989. 2496(a)S
  3990. (new)126 2580 A
  3991. (line.)210 2748 A
  3992. 3000(*/)S
  3993. 3150 V
  3994. (12660)210 648 A
  3995. ((void))252 1110 A
  3996. (echo(tp,)336 1404 A
  3997. (tp->tty_termios.c_cc[VREPRINT])1260 1782 A
  3998. 3084(|)S
  3999. (IN_ESC);)336 3168 A
  4000. 3240 V
  4001. (12661)210 648 A
  4002. (rawecho(tp,)462 1110 A
  4003. ('\r');)252 1614 A
  4004. 3330 V
  4005. (12662)210 648 A
  4006. (rawecho(tp,)462 1110 A
  4007. ('\n');)252 1614 A
  4008. 3420 V
  4009. (12663)210 648 A
  4010. 3510 V
  4011. (12664)210 648 A
  4012. 1110(/*)S
  4013. (Reprint)294 1236 A
  4014. (from)168 1572 A
  4015. (the)126 1782 A
  4016. (last)168 1950 A
  4017. (break)210 2160 A
  4018. (onwards.)336 2412 A
  4019. 2790(*/)S
  4020. 3600 V
  4021. (12665)210 648 A
  4022. 1110(do)S
  4023. 1236({)S
  4024. 3690 V
  4025. (12666)210 648 A
  4026. 1362(if)S
  4027. ((head)210 1488 A
  4028. 1740(==)S
  4029. (bufend(tp->tty_inbuf)))924 1866 A
  4030. (head)168 2832 A
  4031. 3042(=)S
  4032. (tp->tty_inbuf;)588 3126 A
  4033. 3780 V
  4034. (12667)210 648 A
  4035. (*head)210 1362 A
  4036. 1614(=)S
  4037. (echo(tp,)336 1698 A
  4038. (*head);)294 2076 A
  4039. 3870 V
  4040. (12668)210 648 A
  4041. (head++;)294 1362 A
  4042. 3960 V
  4043. (12669)210 648 A
  4044. (count++;)336 1362 A
  4045. 4050 V
  4046. (12670)210 648 A
  4047. 1110(})S
  4048. (while)210 1194 A
  4049. ((count)252 1446 A
  4050. 1740(<)S
  4051. (tp->tty_incount);)714 1824 A
  4052. 4140 V
  4053. (12671)210 648 A
  4054. 1026(})S
  4055. 4410 V
  4056. (12674)210 648 A
  4057. (/*==========================================================================*)3234 1026 A
  4058. 4500 V
  4059. (12675)210 648 A
  4060. 1068(*)S
  4061. (out_process)462 2370 A
  4062. 4218(*)S
  4063. 4590 V
  4064. (12676)210 648 A
  4065. (*==========================================================================*/)3234 1068 A
  4066. 4680 V
  4067. (12677)210 648 A
  4068. (PUBLIC)252 1026 A
  4069. (void)168 1320 A
  4070. (out_process(tp,)630 1530 A
  4071. (bstart,)294 2202 A
  4072. (bpos,)210 2538 A
  4073. (bend,)210 2790 A
  4074. (icount,)294 3042 A
  4075. (ocount))294 3378 A
  4076. 4770 V
  4077. (12678)210 648 A
  4078. (tty_t)210 1026 A
  4079. (*tp;)168 1278 A
  4080. 4860 V
  4081. (12679)210 648 A
  4082. (char)168 1026 A
  4083. (*bstart,)336 1236 A
  4084. (*bpos,)252 1614 A
  4085. (*bend;)252 1908 A
  4086. 2370(/*)S
  4087. (start/pos/end)546 2496 A
  4088. 3084(of)S
  4089. (circular)336 3210 A
  4090. (buffer)252 3588 A
  4091. 3882(*/)S
  4092. 4950 V
  4093. (12680)210 648 A
  4094. (int)126 1026 A
  4095. (*icount;)336 1194 A
  4096. 2370(/*)S
  4097. 2496(#)S
  4098. (input)210 2580 A
  4099. (chars)210 2832 A
  4100. 3084(/)S
  4101. (input)210 3168 A
  4102. (chars)210 3420 A
  4103. (used)168 3672 A
  4104. 3882(*/)S
  4105. 5040 V
  4106. (12681)210 648 A
  4107. (int)126 1026 A
  4108. (*ocount;)336 1194 A
  4109. 2370(/*)S
  4110. (max)126 2496 A
  4111. (output)252 2664 A
  4112. (chars)210 2958 A
  4113. 3210(/)S
  4114. (output)252 3294 A
  4115. (chars)210 3588 A
  4116. (used)168 3840 A
  4117. 4050(*/)S
  4118. 5130 V
  4119. (12682)210 648 A
  4120. 1026({)S
  4121. 5220 V
  4122. (12683)210 648 A
  4123. 1026(/*)S
  4124. (Perform)294 1152 A
  4125. (output)252 1488 A
  4126. (processing)420 1782 A
  4127. 2244(on)S
  4128. 2370(a)S
  4129. (circular)336 2454 A
  4130. (buffer.)294 2832 A
  4131. (*icount)294 3210 A
  4132. 3546(is)S
  4133. (the)126 3672 A
  4134. (number)252 3840 A
  4135. 4134(of)S
  4136. 5310 V
  4137. (12684)210 648 A
  4138. 1068(*)S
  4139. (bytes)210 1152 A
  4140. 1404(to)S
  4141. (process,)336 1530 A
  4142. (and)126 1908 A
  4143. (the)126 2076 A
  4144. (number)252 2244 A
  4145. 2538(of)S
  4146. (bytes)210 2664 A
  4147. (actually)336 2916 A
  4148. (processed)378 3294 A
  4149. 3714(on)S
  4150. (return.)294 3840 A
  4151. 5400 V
  4152. (12685)210 648 A
  4153. 1068(*)S
  4154. (*ocount)294 1152 A
  4155. 1488(is)S
  4156. (the)126 1614 A
  4157. (space)210 1782 A
  4158. (available)378 2034 A
  4159. 2454(on)S
  4160. (input)210 2580 A
  4161. (and)126 2832 A
  4162. (the)126 3000 A
  4163. (space)210 3168 A
  4164. (used)168 3420 A
  4165. 3630(on)S
  4166. (output.)294 3756 A
  4167. 5490 V
  4168. (12686)210 648 A
  4169. 1068(*)S
  4170. ((Naturally)420 1152 A
  4171. (*icount)294 1614 A
  4172. 1950(<)S
  4173. (*ocount.))378 2034 A
  4174. (The)126 2496 A
  4175. (column)252 2664 A
  4176. (position)336 2958 A
  4177. 3336(is)S
  4178. (updated)294 3462 A
  4179. (modulo)252 3798 A
  4180. 5580 V
  4181. (12687)210 648 A
  4182. 1068(*)S
  4183. (the)126 1152 A
  4184. (TAB)126 1320 A
  4185. (size,)210 1488 A
  4186. (because)294 1740 A
  4187. 2076(we)S
  4188. (really)252 2202 A
  4189. (only)168 2496 A
  4190. (need)168 2706 A
  4191. 2916(it)S
  4192. (for)126 3042 A
  4193. (tabs.)210 3210 A
  4194. 5670 V
  4195. (12688)210 648 A
  4196. 1068(*/)S
  4197. 5760 V
  4198. (12689)210 648 A
  4199. 5850 V
  4200. (12690)210 648 A
  4201. (int)126 1110 A
  4202. (tablen;)294 1278 A
  4203. 5940 V
  4204. (12691)210 648 A
  4205. (int)126 1110 A
  4206. (ict)126 1278 A
  4207. 1446(=)S
  4208. (*icount;)336 1530 A
  4209. 6030 V
  4210. (12692)210 648 A
  4211. (int)126 1110 A
  4212. (oct)126 1278 A
  4213. 1446(=)S
  4214. (*ocount;)336 1530 A
  4215. 6120 V
  4216. (12693)210 648 A
  4217. (int)126 1110 A
  4218. (pos)126 1278 A
  4219. 1446(=)S
  4220. (tp->tty_position;)714 1530 A
  4221. 6210 V
  4222. (12694)210 648 A
  4223. 8418 V
  4224. EP
  4225. %%Page: 172 172
  4226. BP
  4227. /slant 0 def
  4228. /height 0 def
  4229. 630 V
  4230. 12 B
  4231. (172)180 648 A
  4232. 11 R
  4233. 2089(File:)S
  4234. (src/kernel/tty.c)665 2322 A
  4235. 10 R
  4236. 3402(MINIX)S
  4237. 3730(SOURCE)S
  4238. 4153(CODE)S
  4239. 900 V
  4240. 7 LST
  4241. (12695)210 648 A
  4242. (while)210 1110 A
  4243. ((ict)168 1362 A
  4244. 1572(>)S
  4245. 1656(0))S
  4246. 1782({)S
  4247. 990 V
  4248. (12696)210 648 A
  4249. (switch)252 1362 A
  4250. ((*bpos))294 1656 A
  4251. 1992({)S
  4252. 1080 V
  4253. (12697)210 648 A
  4254. (case)168 1362 A
  4255. ('\7':)210 1572 A
  4256. 1170 V
  4257. (12698)210 648 A
  4258. (break;)252 1698 A
  4259. 1260 V
  4260. (12699)210 648 A
  4261. (case)168 1362 A
  4262. ('\b':)210 1572 A
  4263. 1350 V
  4264. (12700)210 648 A
  4265. (pos--;)252 1698 A
  4266. 1440 V
  4267. (12701)210 648 A
  4268. (break;)252 1698 A
  4269. 1530 V
  4270. (12702)210 648 A
  4271. (case)168 1362 A
  4272. ('\r':)210 1572 A
  4273. 1620 V
  4274. (12703)210 648 A
  4275. (pos)126 1698 A
  4276. 1866(=)S
  4277. 1950(0;)S
  4278. 1710 V
  4279. (12704)210 648 A
  4280. (break;)252 1698 A
  4281. 1800 V
  4282. (12705)210 648 A
  4283. (case)168 1362 A
  4284. ('\n':)210 1572 A
  4285. 1890 V
  4286. (12706)210 648 A
  4287. 1698(if)S
  4288. (((tp->tty_termios.c_oflag)1050 1824 A
  4289. 2916(&)S
  4290. ((OPOST|ONLCR)))588 3000 A
  4291. 1980 V
  4292. (12707)210 648 A
  4293. 3378(==)S
  4294. ((OPOST|ONLCR)))588 3504 A
  4295. 4134({)S
  4296. 2070 V
  4297. (12708)210 648 A
  4298. 2034(/*)S
  4299. (Map)126 2160 A
  4300. 2328(LF)S
  4301. 2454(to)S
  4302. (CR+LF)210 2580 A
  4303. 2832(if)S
  4304. (there)210 2958 A
  4305. 3210(is)S
  4306. (space.)252 3336 A
  4307. (Note)168 3672 A
  4308. (that)168 3882 A
  4309. (the)126 4092 A
  4310. 2160 V
  4311. (12709)210 648 A
  4312. 2076(*)S
  4313. (next)168 2160 A
  4314. (character)378 2370 A
  4315. 2790(in)S
  4316. (the)126 2916 A
  4317. (buffer)252 3084 A
  4318. 3378(is)S
  4319. (overwritten,)504 3504 A
  4320. 4050(so)S
  4321. 2250 V
  4322. (12710)210 648 A
  4323. 2076(*)S
  4324. 2160(we)S
  4325. (stop)168 2286 A
  4326. 2496(at)S
  4327. (this)168 2622 A
  4328. (point.)252 2832 A
  4329. 2340 V
  4330. (12711)210 648 A
  4331. 2076(*/)S
  4332. 2430 V
  4333. (12712)210 648 A
  4334. 2034(if)S
  4335. ((oct)168 2160 A
  4336. 2370(>=)S
  4337. 2496(2))S
  4338. 2622({)S
  4339. 2520 V
  4340. (12713)210 648 A
  4341. (*bpos)210 2370 A
  4342. 2622(=)S
  4343. ('\r';)210 2706 A
  4344. 2610 V
  4345. (12714)210 648 A
  4346. 2370(if)S
  4347. ((++bpos)294 2496 A
  4348. 2832(==)S
  4349. (bend))210 2958 A
  4350. (bpos)168 3210 A
  4351. 3420(=)S
  4352. (bstart;)294 3504 A
  4353. 2700 V
  4354. (12715)210 648 A
  4355. (*bpos)210 2370 A
  4356. 2622(=)S
  4357. ('\n';)210 2706 A
  4358. 2790 V
  4359. (12716)210 648 A
  4360. (pos)126 2370 A
  4361. 2538(=)S
  4362. 2622(0;)S
  4363. 2880 V
  4364. (12717)210 648 A
  4365. (ict--;)252 2370 A
  4366. 2970 V
  4367. (12718)210 648 A
  4368. (oct)126 2370 A
  4369. 2538(-=)S
  4370. 2664(2;)S
  4371. 3060 V
  4372. (12719)210 648 A
  4373. 2034(})S
  4374. 3150 V
  4375. (12720)210 648 A
  4376. (goto)168 2034 A
  4377. (out_done;)378 2244 A
  4378. 2706(/*)S
  4379. 2832(no)S
  4380. (space)210 2958 A
  4381. 3210(or)S
  4382. (buffer)252 3336 A
  4383. (got)126 3630 A
  4384. (changed)294 3798 A
  4385. 4134(*/)S
  4386. 3240 V
  4387. (12721)210 648 A
  4388. 1698(})S
  4389. 3330 V
  4390. (12722)210 648 A
  4391. (break;)252 1698 A
  4392. 3420 V
  4393. (12723)210 648 A
  4394. (case)168 1362 A
  4395. ('\t':)210 1572 A
  4396. 3510 V
  4397. (12724)210 648 A
  4398. 1698(/*)S
  4399. (Best)168 1824 A
  4400. (guess)210 2034 A
  4401. (for)126 2286 A
  4402. (the)126 2454 A
  4403. (tab)126 2622 A
  4404. (length.)294 2790 A
  4405. 3126(*/)S
  4406. 3600 V
  4407. (12725)210 648 A
  4408. (tablen)252 1698 A
  4409. 1992(=)S
  4410. (TAB_SIZE)336 2076 A
  4411. 2454(-)S
  4412. ((pos)168 2538 A
  4413. 2748(&)S
  4414. (TAB_MASK);)420 2832 A
  4415. 3690 V
  4416. (12726)210 648 A
  4417. 3780 V
  4418. (12727)210 648 A
  4419. 1698(if)S
  4420. (((tp->tty_termios.c_oflag)1050 1824 A
  4421. 2916(&)S
  4422. ((OPOST|XTABS)))588 3000 A
  4423. 3870 V
  4424. (12728)210 648 A
  4425. 3378(==)S
  4426. ((OPOST|XTABS)))588 3504 A
  4427. 4134({)S
  4428. 3960 V
  4429. (12729)210 648 A
  4430. 2034(/*)S
  4431. (Tabs)168 2160 A
  4432. (must)168 2370 A
  4433. 2580(be)S
  4434. (expanded.)378 2706 A
  4435. 3126(*/)S
  4436. 4050 V
  4437. (12730)210 648 A
  4438. 2034(if)S
  4439. ((oct)168 2160 A
  4440. 2370(>=)S
  4441. (tablen))294 2496 A
  4442. 2832({)S
  4443. 4140 V
  4444. (12731)210 648 A
  4445. (pos)126 2370 A
  4446. 2538(+=)S
  4447. (tablen;)294 2664 A
  4448. 4230 V
  4449. (12732)210 648 A
  4450. (ict--;)252 2370 A
  4451. 4320 V
  4452. (12733)210 648 A
  4453. (oct)126 2370 A
  4454. 2538(-=)S
  4455. (tablen;)294 2664 A
  4456. 4410 V
  4457. (12734)210 648 A
  4458. 2370(do)S
  4459. 2496({)S
  4460. 4500 V
  4461. (12735)210 648 A
  4462. (*bpos)210 2706 A
  4463. 2958(=)S
  4464. 3042(')S
  4465. 3126(';)S
  4466. 4590 V
  4467. (12736)210 648 A
  4468. 2706(if)S
  4469. ((++bpos)294 2832 A
  4470. 3168(==)S
  4471. (bend))210 3294 A
  4472. (bpos)168 3546 A
  4473. 3756(=)S
  4474. (bstart;)294 3840 A
  4475. 4680 V
  4476. (12737)210 648 A
  4477. 2370(})S
  4478. (while)210 2454 A
  4479. ((--tablen)378 2706 A
  4480. 3126(!=)S
  4481. (0);)126 3252 A
  4482. 4770 V
  4483. (12738)210 648 A
  4484. 2034(})S
  4485. 4860 V
  4486. (12739)210 648 A
  4487. (goto)168 2034 A
  4488. (out_done;)378 2244 A
  4489. 4950 V
  4490. (12740)210 648 A
  4491. 1698(})S
  4492. 5040 V
  4493. (12741)210 648 A
  4494. 1698(/*)S
  4495. (Tabs)168 1824 A
  4496. (are)126 2034 A
  4497. (output)252 2202 A
  4498. (directly.)378 2496 A
  4499. 2916(*/)S
  4500. 5130 V
  4501. (12742)210 648 A
  4502. (pos)126 1698 A
  4503. 1866(+=)S
  4504. (tablen;)294 1992 A
  4505. 5220 V
  4506. (12743)210 648 A
  4507. (break;)252 1698 A
  4508. 5310 V
  4509. (12744)210 648 A
  4510. (default:)336 1362 A
  4511. 5400 V
  4512. (12745)210 648 A
  4513. 1698(/*)S
  4514. (Assume)252 1824 A
  4515. (any)126 2118 A
  4516. (other)210 2286 A
  4517. (character)378 2538 A
  4518. (prints)252 2958 A
  4519. 3252(as)S
  4520. (one)126 3378 A
  4521. (character.)420 3546 A
  4522. 4008(*/)S
  4523. 5490 V
  4524. (12746)210 648 A
  4525. (pos++;)252 1698 A
  4526. 5580 V
  4527. (12747)210 648 A
  4528. 1362(})S
  4529. 5670 V
  4530. (12748)210 648 A
  4531. 1362(if)S
  4532. ((++bpos)294 1488 A
  4533. 1824(==)S
  4534. (bend))210 1950 A
  4535. (bpos)168 2202 A
  4536. 2412(=)S
  4537. (bstart;)294 2496 A
  4538. 5760 V
  4539. (12749)210 648 A
  4540. (ict--;)252 1362 A
  4541. 5850 V
  4542. (12750)210 648 A
  4543. (oct--;)252 1362 A
  4544. 5940 V
  4545. (12751)210 648 A
  4546. 1110(})S
  4547. 6030 V
  4548. (12752)210 648 A
  4549. (out_done:)378 1026 A
  4550. 6120 V
  4551. (12753)210 648 A
  4552. (tp->tty_position)672 1110 A
  4553. 1824(=)S
  4554. (pos)126 1908 A
  4555. 2076(&)S
  4556. (TAB_MASK;)378 2160 A
  4557. 6210 V
  4558. (12754)210 648 A
  4559. 8418 V
  4560. EP
  4561. %%Page: 173 173
  4562. BP
  4563. /slant 0 def
  4564. /height 0 def
  4565. 630 V
  4566. 10 R
  4567. 648(MINIX)S
  4568. 976(SOURCE)S
  4569. 1399(CODE)S
  4570. 11 R
  4571. 2089(File:)S
  4572. (src/kernel/tty.c)665 2322 A
  4573. 12 B
  4574. (173)180 4248 A
  4575. 900 V
  4576. 7 LST
  4577. (12755)210 648 A
  4578. (*icount)294 1110 A
  4579. 1446(-=)S
  4580. (ict;)168 1572 A
  4581. 2034(/*)S
  4582. ([io]ct)252 2160 A
  4583. (are)126 2454 A
  4584. (the)126 2622 A
  4585. (number)252 2790 A
  4586. 3084(of)S
  4587. (chars)210 3210 A
  4588. (not)126 3462 A
  4589. (used)168 3630 A
  4590. 3840(*/)S
  4591. 990 V
  4592. (12756)210 648 A
  4593. (*ocount)294 1110 A
  4594. 1446(-=)S
  4595. (oct;)168 1572 A
  4596. 2034(/*)S
  4597. (*[io]count)420 2160 A
  4598. (are)126 2622 A
  4599. (the)126 2790 A
  4600. (number)252 2958 A
  4601. 3252(of)S
  4602. (chars)210 3378 A
  4603. (that)168 3630 A
  4604. (are)126 3840 A
  4605. (used)168 4008 A
  4606. 4218(*/)S
  4607. 1080 V
  4608. (12757)210 648 A
  4609. 1026(})S
  4610. 1350 V
  4611. (12760)210 648 A
  4612. (/*===========================================================================*)3276 1026 A
  4613. 1440 V
  4614. (12761)210 648 A
  4615. 1068(*)S
  4616. (dev_ioctl)378 2370 A
  4617. 4260(*)S
  4618. 1530 V
  4619. (12762)210 648 A
  4620. (*===========================================================================*/)3276 1068 A
  4621. 1620 V
  4622. (12763)210 648 A
  4623. (PRIVATE)294 1026 A
  4624. (void)168 1362 A
  4625. (dev_ioctl(tp))546 1572 A
  4626. 1710 V
  4627. (12764)210 648 A
  4628. (tty_t)210 1026 A
  4629. (*tp;)168 1278 A
  4630. 1800 V
  4631. (12765)210 648 A
  4632. 1026({)S
  4633. 1890 V
  4634. (12766)210 648 A
  4635. 1026(/*)S
  4636. (The)126 1152 A
  4637. (ioctl's)294 1320 A
  4638. (TCSETSW,)336 1656 A
  4639. (TCSETSF)294 2034 A
  4640. (and)126 2370 A
  4641. (TCDRAIN)294 2538 A
  4642. (wait)168 2874 A
  4643. (for)126 3084 A
  4644. (output)252 3252 A
  4645. 3546(to)S
  4646. (finish)252 3672 A
  4647. 3966(to)S
  4648. (make)168 4092 A
  4649. 1980 V
  4650. (12767)210 648 A
  4651. 1068(*)S
  4652. (sure)168 1152 A
  4653. (that)168 1362 A
  4654. 1572(an)S
  4655. (attribute)378 1698 A
  4656. (change)252 2118 A
  4657. (doesn't)294 2412 A
  4658. (affect)252 2748 A
  4659. (the)126 3042 A
  4660. (processing)420 3210 A
  4661. 3672(of)S
  4662. (current)294 3798 A
  4663. 2070 V
  4664. (12768)210 648 A
  4665. 1068(*)S
  4666. (output.)294 1152 A
  4667. (Once)168 1530 A
  4668. (output)252 1740 A
  4669. (finishes)336 2034 A
  4670. (the)126 2412 A
  4671. (ioctl)210 2580 A
  4672. 2832(is)S
  4673. (executed)336 2958 A
  4674. 3336(as)S
  4675. 3462(in)S
  4676. (do_ioctl().)462 3588 A
  4677. 2160 V
  4678. (12769)210 648 A
  4679. 1068(*/)S
  4680. 2250 V
  4681. (12770)210 648 A
  4682. (phys_bytes)420 1110 A
  4683. (user_phys;)420 1572 A
  4684. 2340 V
  4685. (12771)210 648 A
  4686. 2430 V
  4687. (12772)210 648 A
  4688. 1110(if)S
  4689. ((tp->tty_outleft)672 1236 A
  4690. 1950(>)S
  4691. 2034(0))S
  4692. (return;)294 2160 A
  4693. 3042(/*)S
  4694. (output)252 3168 A
  4695. (not)126 3462 A
  4696. (finished)336 3630 A
  4697. 4008(*/)S
  4698. 2520 V
  4699. (12773)210 648 A
  4700. 2610 V
  4701. (12774)210 648 A
  4702. 1110(if)S
  4703. ((tp->tty_ioreq)588 1236 A
  4704. 1866(!=)S
  4705. (TCDRAIN))336 1992 A
  4706. 2370({)S
  4707. 2700 V
  4708. (12775)210 648 A
  4709. 1362(if)S
  4710. ((tp->tty_ioreq)588 1488 A
  4711. 2118(==)S
  4712. (TCSETSF))336 2244 A
  4713. (tty_icancel(tp);)672 2622 A
  4714. 2790 V
  4715. (12776)210 648 A
  4716. (user_phys)378 1362 A
  4717. 1782(=)S
  4718. (proc_vir2phys(proc_addr(tp->tty_ioproc),)1680 1866 A
  4719. (tp->tty_iovir);)630 3588 A
  4720. 2880 V
  4721. (12777)210 648 A
  4722. (phys_copy(user_phys,)840 1362 A
  4723. (vir2phys(&tp->tty_termios),)1134 2244 A
  4724. 2970 V
  4725. (12778)210 648 A
  4726. ((phys_bytes))504 2706 A
  4727. (sizeof(tp->tty_termios));)1050 3252 A
  4728. 3060 V
  4729. (12779)210 648 A
  4730. (setattr(tp);)504 1362 A
  4731. 3150 V
  4732. (12780)210 648 A
  4733. 1110(})S
  4734. 3240 V
  4735. (12781)210 648 A
  4736. (tp->tty_ioreq)546 1110 A
  4737. 1698(=)S
  4738. 1782(0;)S
  4739. 3330 V
  4740. (12782)210 648 A
  4741. (tty_reply(REVIVE,)714 1110 A
  4742. (tp->tty_iocaller,)714 1866 A
  4743. (tp->tty_ioproc,)630 2622 A
  4744. (OK);)168 3294 A
  4745. 3420 V
  4746. (12783)210 648 A
  4747. 1026(})S
  4748. 3690 V
  4749. (12786)210 648 A
  4750. (/*===========================================================================*)3276 1026 A
  4751. 3780 V
  4752. (12787)210 648 A
  4753. 1068(*)S
  4754. (setattr)294 2370 A
  4755. 4260(*)S
  4756. 3870 V
  4757. (12788)210 648 A
  4758. (*===========================================================================*/)3276 1068 A
  4759. 3960 V
  4760. (12789)210 648 A
  4761. (PRIVATE)294 1026 A
  4762. (void)168 1362 A
  4763. (setattr(tp))462 1572 A
  4764. 4050 V
  4765. (12790)210 648 A
  4766. (tty_t)210 1026 A
  4767. (*tp;)168 1278 A
  4768. 4140 V
  4769. (12791)210 648 A
  4770. 1026({)S
  4771. 4230 V
  4772. (12792)210 648 A
  4773. 1026(/*)S
  4774. (Apply)210 1152 A
  4775. (the)126 1404 A
  4776. (new)126 1572 A
  4777. (line)168 1740 A
  4778. (attributes)420 1950 A
  4779. ((raw/canonical,)630 2412 A
  4780. (line)168 3084 A
  4781. (speed,)252 3294 A
  4782. (etc.))210 3588 A
  4783. 3840(*/)S
  4784. 4320 V
  4785. (12793)210 648 A
  4786. (u16_t)210 1110 A
  4787. (*inp;)210 1362 A
  4788. 4410 V
  4789. (12794)210 648 A
  4790. (int)126 1110 A
  4791. (count;)252 1278 A
  4792. 4500 V
  4793. (12795)210 648 A
  4794. 4590 V
  4795. (12796)210 648 A
  4796. 1110(if)S
  4797. ((!(tp->tty_termios.c_lflag)1092 1236 A
  4798. 2370(&)S
  4799. (ICANON)))336 2454 A
  4800. 2832({)S
  4801. 4680 V
  4802. (12797)210 648 A
  4803. 1362(/*)S
  4804. (Raw)126 1488 A
  4805. (mode;)210 1656 A
  4806. (put)126 1908 A
  4807. 2076(a)S
  4808. ("line)210 2160 A
  4809. (break")252 2412 A
  4810. 2706(on)S
  4811. (all)126 2832 A
  4812. (characters)420 3000 A
  4813. 3462(in)S
  4814. (the)126 3588 A
  4815. (input)210 3756 A
  4816. (queue.)252 4008 A
  4817. 4770 V
  4818. (12798)210 648 A
  4819. 1404(*)S
  4820. 1488(It)S
  4821. 1614(is)S
  4822. (undefined)378 1740 A
  4823. (what)168 2160 A
  4824. (happens)294 2370 A
  4825. 2706(to)S
  4826. (the)126 2832 A
  4827. (input)210 3000 A
  4828. (queue)210 3252 A
  4829. (when)168 3504 A
  4830. (ICANON)252 3714 A
  4831. 4008(is)S
  4832. 4860 V
  4833. (12799)210 648 A
  4834. 1404(*)S
  4835. (switched)336 1488 A
  4836. (off,)168 1866 A
  4837. 2076(a)S
  4838. (process)294 2160 A
  4839. (should)252 2496 A
  4840. (use)126 2790 A
  4841. (TCSAFLUSH)378 2958 A
  4842. 3378(to)S
  4843. (flush)210 3504 A
  4844. (the)126 3756 A
  4845. (queue.)252 3924 A
  4846. 4950 V
  4847. (12800)210 648 A
  4848. 1404(*)S
  4849. (Keeping)294 1488 A
  4850. (the)126 1824 A
  4851. (queue)210 1992 A
  4852. 2244(to)S
  4853. (preserve)336 2370 A
  4854. (typeahead)378 2748 A
  4855. 3168(is)S
  4856. (the)126 3294 A
  4857. (Right)210 3462 A
  4858. (Thing,)252 3714 A
  4859. (however)294 4008 A
  4860. 5040 V
  4861. (12801)210 648 A
  4862. 1404(*)S
  4863. (when)168 1488 A
  4864. 1698(a)S
  4865. (process)294 1782 A
  4866. (does)168 2118 A
  4867. (use)126 2328 A
  4868. (TCSANOW)294 2496 A
  4869. 2832(to)S
  4870. (switch)252 2958 A
  4871. 3252(to)S
  4872. (raw)126 3378 A
  4873. (mode.)210 3546 A
  4874. 5130 V
  4875. (12802)210 648 A
  4876. 1404(*/)S
  4877. 5220 V
  4878. (12803)210 648 A
  4879. (count)210 1362 A
  4880. 1614(=)S
  4881. (tp->tty_eotct)546 1698 A
  4882. 2286(=)S
  4883. (tp->tty_incount;)672 2370 A
  4884. 5310 V
  4885. (12804)210 648 A
  4886. (inp)126 1362 A
  4887. 1530(=)S
  4888. (tp->tty_intail;)630 1614 A
  4889. 5400 V
  4890. (12805)210 648 A
  4891. (while)210 1362 A
  4892. ((count)252 1614 A
  4893. 1908(>)S
  4894. 1992(0))S
  4895. 2118({)S
  4896. 5490 V
  4897. (12806)210 648 A
  4898. (*inp)168 1698 A
  4899. 1908(|=)S
  4900. (IN_EOT;)294 2034 A
  4901. 5580 V
  4902. (12807)210 648 A
  4903. 1698(if)S
  4904. ((++inp)252 1824 A
  4905. 2118(==)S
  4906. (bufend(tp->tty_inbuf)))924 2244 A
  4907. (inp)126 3210 A
  4908. 3378(=)S
  4909. (tp->tty_inbuf;)588 3462 A
  4910. 5670 V
  4911. (12808)210 648 A
  4912. (--count;)336 1698 A
  4913. 5760 V
  4914. (12809)210 648 A
  4915. 1362(})S
  4916. 5850 V
  4917. (12810)210 648 A
  4918. 1110(})S
  4919. 5940 V
  4920. (12811)210 648 A
  4921. 6030 V
  4922. (12812)210 648 A
  4923. 1110(/*)S
  4924. (Inspect)294 1236 A
  4925. (MIN)126 1572 A
  4926. (and)126 1740 A
  4927. (TIME.)210 1908 A
  4928. 2160(*/)S
  4929. 6120 V
  4930. (12813)210 648 A
  4931. (lock();)294 1110 A
  4932. 6210 V
  4933. (12814)210 648 A
  4934. (settimer(tp,)504 1110 A
  4935. (FALSE);)294 1656 A
  4936. 8418 V
  4937. EP
  4938. %%Page: 174 174
  4939. BP
  4940. /slant 0 def
  4941. /height 0 def
  4942. 630 V
  4943. 12 B
  4944. (174)180 648 A
  4945. 11 R
  4946. 2089(File:)S
  4947. (src/kernel/tty.c)665 2322 A
  4948. 10 R
  4949. 3402(MINIX)S
  4950. 3730(SOURCE)S
  4951. 4153(CODE)S
  4952. 900 V
  4953. 7 LST
  4954. (12815)210 648 A
  4955. (unlock();)378 1110 A
  4956. 990 V
  4957. (12816)210 648 A
  4958. 1110(if)S
  4959. ((tp->tty_termios.c_lflag)1008 1236 A
  4960. 2286(&)S
  4961. (ICANON))294 2370 A
  4962. 2706({)S
  4963. 1080 V
  4964. (12817)210 648 A
  4965. 1362(/*)S
  4966. 1488(No)S
  4967. (MIN)126 1614 A
  4968. 1782(&)S
  4969. (TIME)168 1866 A
  4970. 2076(in)S
  4971. (canonical)378 2202 A
  4972. (mode.)210 2622 A
  4973. 2874(*/)S
  4974. 1170 V
  4975. (12818)210 648 A
  4976. (tp->tty_min)462 1362 A
  4977. 1866(=)S
  4978. 1950(1;)S
  4979. 1260 V
  4980. (12819)210 648 A
  4981. 1110(})S
  4982. (else)168 1194 A
  4983. 1404({)S
  4984. 1350 V
  4985. (12820)210 648 A
  4986. 1362(/*)S
  4987. 1488(In)S
  4988. (raw)126 1614 A
  4989. (mode)168 1782 A
  4990. (MIN)126 1992 A
  4991. 2160(is)S
  4992. (the)126 2286 A
  4993. (number)252 2454 A
  4994. 2748(of)S
  4995. (chars)210 2874 A
  4996. (wanted,)294 3126 A
  4997. (and)126 3462 A
  4998. (TIME)168 3630 A
  4999. (how)126 3840 A
  5000. (long)168 4008 A
  5001. 1440 V
  5002. (12821)210 648 A
  5003. 1404(*)S
  5004. 1488(to)S
  5005. (wait)168 1614 A
  5006. (for)126 1824 A
  5007. (them.)210 1992 A
  5008. (With)168 2286 A
  5009. (interesting)462 2496 A
  5010. (exceptions)420 3000 A
  5011. 3462(if)S
  5012. (either)252 3588 A
  5013. 3882(is)S
  5014. (zero.)210 4008 A
  5015. 1530 V
  5016. (12822)210 648 A
  5017. 1404(*/)S
  5018. 1620 V
  5019. (12823)210 648 A
  5020. (tp->tty_min)462 1362 A
  5021. 1866(=)S
  5022. (tp->tty_termios.c_cc[VMIN];)1134 1950 A
  5023. 1710 V
  5024. (12824)210 648 A
  5025. 1362(if)S
  5026. ((tp->tty_min)504 1488 A
  5027. 2034(==)S
  5028. 2160(0)S
  5029. 2244(&&)S
  5030. (tp->tty_termios.c_cc[VTIME])1134 2370 A
  5031. 3546(>)S
  5032. 3630(0))S
  5033. 1800 V
  5034. (12825)210 648 A
  5035. (tp->tty_min)462 1698 A
  5036. 2202(=)S
  5037. 2286(1;)S
  5038. 1890 V
  5039. (12826)210 648 A
  5040. 1110(})S
  5041. 1980 V
  5042. (12827)210 648 A
  5043. 2070 V
  5044. (12828)210 648 A
  5045. 1110(if)S
  5046. ((!(tp->tty_termios.c_iflag)1092 1236 A
  5047. 2370(&)S
  5048. (IXON)))252 2454 A
  5049. 2748({)S
  5050. 2160 V
  5051. (12829)210 648 A
  5052. 1362(/*)S
  5053. 1488(No)S
  5054. (start/stop)420 1614 A
  5055. (output)252 2076 A
  5056. (control,)336 2370 A
  5057. 2748(so)S
  5058. (don't)210 2874 A
  5059. (leave)210 3126 A
  5060. (output)252 3378 A
  5061. (inhibited.)420 3672 A
  5062. 4134(*/)S
  5063. 2250 V
  5064. (12830)210 648 A
  5065. (tp->tty_inhibited)714 1362 A
  5066. 2118(=)S
  5067. (RUNNING;)336 2202 A
  5068. 2340 V
  5069. (12831)210 648 A
  5070. (tp->tty_events)588 1362 A
  5071. 1992(=)S
  5072. 2076(1;)S
  5073. 2430 V
  5074. (12832)210 648 A
  5075. 1110(})S
  5076. 2520 V
  5077. (12833)210 648 A
  5078. 2610 V
  5079. (12834)210 648 A
  5080. 1110(/*)S
  5081. (Setting)294 1236 A
  5082. (the)126 1572 A
  5083. (output)252 1740 A
  5084. (speed)210 2034 A
  5085. 2286(to)S
  5086. (zero)168 2412 A
  5087. (hangs)210 2622 A
  5088. 2874(up)S
  5089. (the)126 3000 A
  5090. (phone.)252 3168 A
  5091. 3462(*/)S
  5092. 2700 V
  5093. (12835)210 648 A
  5094. 1110(if)S
  5095. ((tp->tty_termios.c_ospeed)1050 1236 A
  5096. 2328(==)S
  5097. (B0))126 2454 A
  5098. (sigchar(tp,)462 2622 A
  5099. (SIGHUP);)336 3126 A
  5100. 2790 V
  5101. (12836)210 648 A
  5102. 2880 V
  5103. (12837)210 648 A
  5104. 1110(/*)S
  5105. (Set)126 1236 A
  5106. (new)126 1404 A
  5107. (line)168 1572 A
  5108. (speed,)252 1782 A
  5109. (character)378 2076 A
  5110. (size,)210 2496 A
  5111. (etc)126 2748 A
  5112. 2916(at)S
  5113. (the)126 3042 A
  5114. (device)252 3210 A
  5115. (level.)252 3504 A
  5116. 3798(*/)S
  5117. 2970 V
  5118. (12838)210 648 A
  5119. ((*tp->tty_ioctl)(tp);)882 1110 A
  5120. 3060 V
  5121. (12839)210 648 A
  5122. 1026(})S
  5123. 3330 V
  5124. (12842)210 648 A
  5125. (/*===========================================================================*)3276 1026 A
  5126. 3420 V
  5127. (12843)210 648 A
  5128. 1068(*)S
  5129. (tty_reply)378 2370 A
  5130. 4260(*)S
  5131. 3510 V
  5132. (12844)210 648 A
  5133. (*===========================================================================*/)3276 1068 A
  5134. 3600 V
  5135. (12845)210 648 A
  5136. (PUBLIC)252 1026 A
  5137. (void)168 1320 A
  5138. (tty_reply(code,)630 1530 A
  5139. (replyee,)336 2202 A
  5140. (proc_nr,)336 2580 A
  5141. (status))294 2958 A
  5142. 3690 V
  5143. (12846)210 648 A
  5144. (int)126 1026 A
  5145. (code;)210 1194 A
  5146. 2370(/*)S
  5147. (TASK_REPLY)420 2496 A
  5148. 2958(or)S
  5149. (REVIVE)252 3084 A
  5150. 3378(*/)S
  5151. 3780 V
  5152. (12847)210 648 A
  5153. (int)126 1026 A
  5154. (replyee;)336 1194 A
  5155. 2370(/*)S
  5156. (destination)462 2496 A
  5157. (address)294 3000 A
  5158. (for)126 3336 A
  5159. (the)126 3504 A
  5160. (reply)210 3672 A
  5161. 3924(*/)S
  5162. 3870 V
  5163. (12848)210 648 A
  5164. (int)126 1026 A
  5165. (proc_nr;)336 1194 A
  5166. 2370(/*)S
  5167. 2496(to)S
  5168. (whom)168 2622 A
  5169. (should)252 2832 A
  5170. (the)126 3126 A
  5171. (reply)210 3294 A
  5172. (go?)126 3546 A
  5173. 3714(*/)S
  5174. 3960 V
  5175. (12849)210 648 A
  5176. (int)126 1026 A
  5177. (status;)294 1194 A
  5178. 2370(/*)S
  5179. (reply)210 2496 A
  5180. (code)168 2748 A
  5181. 2958(*/)S
  5182. 4050 V
  5183. (12850)210 648 A
  5184. 1026({)S
  5185. 4140 V
  5186. (12851)210 648 A
  5187. 1026(/*)S
  5188. (Send)168 1152 A
  5189. 1362(a)S
  5190. (reply)210 1446 A
  5191. 1698(to)S
  5192. 1824(a)S
  5193. (process)294 1908 A
  5194. (that)168 2244 A
  5195. (wanted)252 2454 A
  5196. 2748(to)S
  5197. (read)168 2874 A
  5198. 3084(or)S
  5199. (write)210 3210 A
  5200. (data.)210 3462 A
  5201. 3714(*/)S
  5202. 4230 V
  5203. (12852)210 648 A
  5204. 4320 V
  5205. (12853)210 648 A
  5206. (message)294 1110 A
  5207. (tty_mess;)378 1446 A
  5208. 4410 V
  5209. (12854)210 648 A
  5210. 4500 V
  5211. (12855)210 648 A
  5212. (tty_mess.m_type)630 1110 A
  5213. 1782(=)S
  5214. (code;)210 1866 A
  5215. 4590 V
  5216. (12856)210 648 A
  5217. (tty_mess.REP_PROC_NR)840 1110 A
  5218. 1992(=)S
  5219. (proc_nr;)336 2076 A
  5220. 4680 V
  5221. (12857)210 648 A
  5222. (tty_mess.REP_STATUS)798 1110 A
  5223. 1950(=)S
  5224. (status;)294 2034 A
  5225. 4770 V
  5226. (12858)210 648 A
  5227. 1110(if)S
  5228. (((status)336 1236 A
  5229. 1614(=)S
  5230. (send(replyee,)546 1698 A
  5231. (&tty_mess)))462 2286 A
  5232. 2790(!=)S
  5233. (OK))126 2916 A
  5234. 4860 V
  5235. (12859)210 648 A
  5236. (panic("tty_reply)672 1362 A
  5237. (failed,)294 2076 A
  5238. (status\n",)420 2412 A
  5239. (status);)336 2874 A
  5240. 4950 V
  5241. (12860)210 648 A
  5242. 1026(})S
  5243. 5220 V
  5244. (12863)210 648 A
  5245. (/*===========================================================================*)3276 1026 A
  5246. 5310 V
  5247. (12864)210 648 A
  5248. 1068(*)S
  5249. (sigchar)294 2370 A
  5250. 4260(*)S
  5251. 5400 V
  5252. (12865)210 648 A
  5253. (*===========================================================================*/)3276 1068 A
  5254. 5490 V
  5255. (12866)210 648 A
  5256. (PUBLIC)252 1026 A
  5257. (void)168 1320 A
  5258. (sigchar(tp,)462 1530 A
  5259. (sig))168 2034 A
  5260. 5580 V
  5261. (12867)210 648 A
  5262. (register)336 1026 A
  5263. (tty_t)210 1404 A
  5264. (*tp;)168 1656 A
  5265. 5670 V
  5266. (12868)210 648 A
  5267. (int)126 1026 A
  5268. (sig;)168 1194 A
  5269. 2370(/*)S
  5270. (SIGINT,)294 2496 A
  5271. (SIGQUIT,)336 2832 A
  5272. (SIGKILL)294 3210 A
  5273. 3546(or)S
  5274. (SIGHUP)252 3672 A
  5275. 3966(*/)S
  5276. 5760 V
  5277. (12869)210 648 A
  5278. 1026({)S
  5279. 5850 V
  5280. (12870)210 648 A
  5281. 1026(/*)S
  5282. (Process)294 1152 A
  5283. 1488(a)S
  5284. (SIGINT,)294 1572 A
  5285. (SIGQUIT)294 1908 A
  5286. 2244(or)S
  5287. (SIGKILL)294 2370 A
  5288. (char)168 2706 A
  5289. (from)168 2916 A
  5290. (the)126 3126 A
  5291. (keyboard)336 3294 A
  5292. 3672(or)S
  5293. (SIGHUP)252 3798 A
  5294. (from)168 4092 A
  5295. 5940 V
  5296. (12871)210 648 A
  5297. 1068(*)S
  5298. 1152(a)S
  5299. (tty)126 1236 A
  5300. (close,)252 1404 A
  5301. ("stty)210 1698 A
  5302. (0",)126 1950 A
  5303. 2118(or)S
  5304. 2244(a)S
  5305. (real)168 2328 A
  5306. (RS-232)252 2538 A
  5307. (hangup.)294 2832 A
  5308. 3210(MM)S
  5309. (will)168 3336 A
  5310. (send)168 3546 A
  5311. (the)126 3756 A
  5312. (signal)252 3924 A
  5313. 4218(to)S
  5314. 6030 V
  5315. (12872)210 648 A
  5316. 1068(*)S
  5317. (the)126 1152 A
  5318. (process)294 1320 A
  5319. (group)210 1656 A
  5320. ((INT,)210 1908 A
  5321. (QUIT),)252 2160 A
  5322. (all)126 2454 A
  5323. (processes)378 2622 A
  5324. ((KILL),)294 3042 A
  5325. 3378(or)S
  5326. (the)126 3504 A
  5327. (session)294 3672 A
  5328. (leader)252 4008 A
  5329. 6120 V
  5330. (12873)210 648 A
  5331. 1068(*)S
  5332. ((HUP).)252 1152 A
  5333. 6210 V
  5334. (12874)210 648 A
  5335. 1068(*/)S
  5336. 8418 V
  5337. EP
  5338. %%Page: 175 175
  5339. BP
  5340. /slant 0 def
  5341. /height 0 def
  5342. 630 V
  5343. 10 R
  5344. 648(MINIX)S
  5345. 976(SOURCE)S
  5346. 1399(CODE)S
  5347. 11 R
  5348. 2089(File:)S
  5349. (src/kernel/tty.c)665 2322 A
  5350. 12 B
  5351. (175)180 4248 A
  5352. 900 V
  5353. 7 LST
  5354. (12875)210 648 A
  5355. 990 V
  5356. (12876)210 648 A
  5357. 1110(if)S
  5358. ((tp->tty_pgrp)546 1236 A
  5359. 1824(!=)S
  5360. 1950(0))S
  5361. (cause_sig(tp->tty_pgrp,)966 2076 A
  5362. (sig);)210 3084 A
  5363. 1080 V
  5364. (12877)210 648 A
  5365. 1170 V
  5366. (12878)210 648 A
  5367. 1110(if)S
  5368. ((!(tp->tty_termios.c_lflag)1092 1236 A
  5369. 2370(&)S
  5370. (NOFLSH)))336 2454 A
  5371. 2832({)S
  5372. 1260 V
  5373. (12879)210 648 A
  5374. (tp->tty_incount)630 1362 A
  5375. 2034(=)S
  5376. (tp->tty_eotct)546 2118 A
  5377. 2706(=)S
  5378. 2790(0;)S
  5379. 3042(/*)S
  5380. (kill)168 3168 A
  5381. (earlier)294 3378 A
  5382. (input)210 3714 A
  5383. 3966(*/)S
  5384. 1350 V
  5385. (12880)210 648 A
  5386. (tp->tty_intail)588 1362 A
  5387. 1992(=)S
  5388. (tp->tty_inhead;)630 2076 A
  5389. 1440 V
  5390. (12881)210 648 A
  5391. ((*tp->tty_ocancel)(tp);)966 1362 A
  5392. 3042(/*)S
  5393. (kill)168 3168 A
  5394. (all)126 3378 A
  5395. (output)252 3546 A
  5396. 3840(*/)S
  5397. 1530 V
  5398. (12882)210 648 A
  5399. (tp->tty_inhibited)714 1362 A
  5400. 2118(=)S
  5401. (RUNNING;)336 2202 A
  5402. 1620 V
  5403. (12883)210 648 A
  5404. (tp->tty_events)588 1362 A
  5405. 1992(=)S
  5406. 2076(1;)S
  5407. 1710 V
  5408. (12884)210 648 A
  5409. 1110(})S
  5410. 1800 V
  5411. (12885)210 648 A
  5412. 1026(})S
  5413. 2070 V
  5414. (12888)210 648 A
  5415. (/*==========================================================================*)3234 1026 A
  5416. 2160 V
  5417. (12889)210 648 A
  5418. 1068(*)S
  5419. (tty_icancel)462 2370 A
  5420. 4218(*)S
  5421. 2250 V
  5422. (12890)210 648 A
  5423. (*==========================================================================*/)3234 1068 A
  5424. 2340 V
  5425. (12891)210 648 A
  5426. (PRIVATE)294 1026 A
  5427. (void)168 1362 A
  5428. (tty_icancel(tp))630 1572 A
  5429. 2430 V
  5430. (12892)210 648 A
  5431. (register)336 1026 A
  5432. (tty_t)210 1404 A
  5433. (*tp;)168 1656 A
  5434. 2520 V
  5435. (12893)210 648 A
  5436. 1026({)S
  5437. 2610 V
  5438. (12894)210 648 A
  5439. 1026(/*)S
  5440. (Discard)294 1152 A
  5441. (all)126 1488 A
  5442. (pending)294 1656 A
  5443. (input,)252 1992 A
  5444. (tty)126 2286 A
  5445. (buffer)252 2454 A
  5446. 2748(or)S
  5447. (device.)294 2874 A
  5448. 3210(*/)S
  5449. 2700 V
  5450. (12895)210 648 A
  5451. 2790 V
  5452. (12896)210 648 A
  5453. (tp->tty_incount)630 1110 A
  5454. 1782(=)S
  5455. (tp->tty_eotct)546 1866 A
  5456. 2454(=)S
  5457. 2538(0;)S
  5458. 2880 V
  5459. (12897)210 648 A
  5460. (tp->tty_intail)588 1110 A
  5461. 1740(=)S
  5462. (tp->tty_inhead;)630 1824 A
  5463. 2970 V
  5464. (12898)210 648 A
  5465. ((*tp->tty_icancel)(tp);)966 1110 A
  5466. 3060 V
  5467. (12899)210 648 A
  5468. 1026(})S
  5469. 3330 V
  5470. (12902)210 648 A
  5471. (/*==========================================================================*)3234 1026 A
  5472. 3420 V
  5473. (12903)210 648 A
  5474. 1068(*)S
  5475. (tty_init)336 2370 A
  5476. 4218(*)S
  5477. 3510 V
  5478. (12904)210 648 A
  5479. (*==========================================================================*/)3234 1068 A
  5480. 3600 V
  5481. (12905)210 648 A
  5482. (PRIVATE)294 1026 A
  5483. (void)168 1362 A
  5484. (tty_init(tp))504 1572 A
  5485. 3690 V
  5486. (12906)210 648 A
  5487. (tty_t)210 1026 A
  5488. (*tp;)168 1278 A
  5489. 2370(/*)S
  5490. (TTY)126 2496 A
  5491. (line)168 2664 A
  5492. 2874(to)S
  5493. (initialize.)462 3000 A
  5494. 3504(*/)S
  5495. 3780 V
  5496. (12907)210 648 A
  5497. 1026({)S
  5498. 3870 V
  5499. (12908)210 648 A
  5500. 1026(/*)S
  5501. (Initialize)420 1152 A
  5502. (tty)126 1614 A
  5503. (structure)378 1782 A
  5504. (and)126 2202 A
  5505. (call)168 2370 A
  5506. (device)252 2580 A
  5507. (initialization)588 2874 A
  5508. (routines.)378 3504 A
  5509. 3924(*/)S
  5510. 3960 V
  5511. (12909)210 648 A
  5512. 4050 V
  5513. (12910)210 648 A
  5514. (tp->tty_intail)588 1110 A
  5515. 1740(=)S
  5516. (tp->tty_inhead)588 1824 A
  5517. 2454(=)S
  5518. (tp->tty_inbuf;)588 2538 A
  5519. 4140 V
  5520. (12911)210 648 A
  5521. (tp->tty_min)462 1110 A
  5522. 1614(=)S
  5523. 1698(1;)S
  5524. 4230 V
  5525. (12912)210 648 A
  5526. (tp->tty_termios)630 1110 A
  5527. 1782(=)S
  5528. (termios_defaults;)714 1866 A
  5529. 4320 V
  5530. (12913)210 648 A
  5531. (tp->tty_icancel)630 1110 A
  5532. 1782(=)S
  5533. (tp->tty_ocancel)630 1866 A
  5534. 2538(=)S
  5535. (tp->tty_ioctl)546 2622 A
  5536. 3210(=)S
  5537. (tp->tty_close)546 3294 A
  5538. 3882(=)S
  5539. 4410 V
  5540. (12914)210 648 A
  5541. (tty_devnop;)462 3714 A
  5542. 4500 V
  5543. (12915)210 648 A
  5544. 1110(if)S
  5545. ((tp)126 1236 A
  5546. 1404(<)S
  5547. (tty_addr(NR_CONS)))756 1488 A
  5548. 2286({)S
  5549. 4590 V
  5550. (12916)210 648 A
  5551. (scr_init(tp);)546 1362 A
  5552. 4680 V
  5553. (12917)210 648 A
  5554. 1110(})S
  5555. (else)168 1194 A
  5556. 4770 V
  5557. (12918)210 648 A
  5558. 1110(if)S
  5559. ((tp)126 1236 A
  5560. 1404(<)S
  5561. (tty_addr(NR_CONS+NR_RS_LINES)))1260 1488 A
  5562. 2790({)S
  5563. 4860 V
  5564. (12919)210 648 A
  5565. (rs_init(tp);)504 1362 A
  5566. 4950 V
  5567. (12920)210 648 A
  5568. 1110(})S
  5569. (else)168 1194 A
  5570. 1404({)S
  5571. 5040 V
  5572. (12921)210 648 A
  5573. (pty_init(tp);)546 1362 A
  5574. 5130 V
  5575. (12922)210 648 A
  5576. 1110(})S
  5577. 5220 V
  5578. (12923)210 648 A
  5579. 1026(})S
  5580. 5490 V
  5581. (12926)210 648 A
  5582. (/*==========================================================================*)3234 1026 A
  5583. 5580 V
  5584. (12927)210 648 A
  5585. 1068(*)S
  5586. (tty_wakeup)420 2370 A
  5587. 4218(*)S
  5588. 5670 V
  5589. (12928)210 648 A
  5590. (*==========================================================================*/)3234 1068 A
  5591. 5760 V
  5592. (12929)210 648 A
  5593. (PUBLIC)252 1026 A
  5594. (void)168 1320 A
  5595. (tty_wakeup(now))630 1530 A
  5596. 5850 V
  5597. (12930)210 648 A
  5598. (clock_t)294 1026 A
  5599. (now;)168 1362 A
  5600. 2706(/*)S
  5601. (current)294 2832 A
  5602. (time)168 3168 A
  5603. 3378(*/)S
  5604. 5940 V
  5605. (12931)210 648 A
  5606. 1026({)S
  5607. 6030 V
  5608. (12932)210 648 A
  5609. 1026(/*)S
  5610. (Wake)168 1152 A
  5611. 1362(up)S
  5612. (TTY)126 1488 A
  5613. (when)168 1656 A
  5614. (something)378 1866 A
  5615. (interesting)462 2286 A
  5616. 2790(is)S
  5617. (happening)378 2916 A
  5618. 3336(on)S
  5619. (one)126 3462 A
  5620. 3630(of)S
  5621. (the)126 3756 A
  5622. (terminal)336 3924 A
  5623. 6120 V
  5624. (12933)210 648 A
  5625. 1068(*)S
  5626. (lines,)252 1152 A
  5627. (like)168 1446 A
  5628. 1656(a)S
  5629. (character)378 1740 A
  5630. (arriving)336 2160 A
  5631. 2538(on)S
  5632. 2664(an)S
  5633. (RS232)210 2790 A
  5634. (line,)210 3042 A
  5635. 3294(a)S
  5636. (key)126 3378 A
  5637. (being)210 3546 A
  5638. (typed,)252 3798 A
  5639. 4092(or)S
  5640. 6210 V
  5641. (12934)210 648 A
  5642. 1068(*)S
  5643. 1152(a)S
  5644. (timer)210 1236 A
  5645. 1488(on)S
  5646. 1614(a)S
  5647. (line)168 1698 A
  5648. (expiring)336 1908 A
  5649. 2286(by)S
  5650. (TIME.)210 2412 A
  5651. 8418 V
  5652. EP
  5653. %%Page: 176 176
  5654. BP
  5655. /slant 0 def
  5656. /height 0 def
  5657. 630 V
  5658. 12 B
  5659. (176)180 648 A
  5660. 11 R
  5661. 2089(File:)S
  5662. (src/kernel/tty.c)665 2322 A
  5663. 10 R
  5664. 3402(MINIX)S
  5665. 3730(SOURCE)S
  5666. 4153(CODE)S
  5667. 900 V
  5668. 7 LST
  5669. (12935)210 648 A
  5670. 1068(*/)S
  5671. 990 V
  5672. (12936)210 648 A
  5673. (tty_t)210 1110 A
  5674. (*tp;)168 1362 A
  5675. 1080 V
  5676. (12937)210 648 A
  5677. 1170 V
  5678. (12938)210 648 A
  5679. 1110(/*)S
  5680. (Scan)168 1236 A
  5681. (the)126 1446 A
  5682. (timerlist)378 1614 A
  5683. (for)126 2034 A
  5684. (expired)294 2202 A
  5685. (timers)252 2538 A
  5686. (and)126 2832 A
  5687. (compute)294 3000 A
  5688. (the)126 3336 A
  5689. (next)168 3504 A
  5690. (timeout)294 3714 A
  5691. (time.)210 4050 A
  5692. 4302(*/)S
  5693. 1260 V
  5694. (12939)210 648 A
  5695. (tty_timeout)462 1110 A
  5696. 1614(=)S
  5697. (TIME_NEVER;)462 1698 A
  5698. 1350 V
  5699. (12940)210 648 A
  5700. (while)210 1110 A
  5701. (((tp)168 1362 A
  5702. 1572(=)S
  5703. (tty_timelist))546 1656 A
  5704. 2244(!=)S
  5705. (NULL))210 2370 A
  5706. 2622({)S
  5707. 1440 V
  5708. (12941)210 648 A
  5709. 1362(if)S
  5710. ((tp->tty_time)546 1488 A
  5711. 2076(>)S
  5712. (now))168 2160 A
  5713. 2370({)S
  5714. 1530 V
  5715. (12942)210 648 A
  5716. (tty_timeout)462 1698 A
  5717. 2202(=)S
  5718. (tp->tty_time;)546 2286 A
  5719. 3042(/*)S
  5720. (this)168 3168 A
  5721. (timer)210 3378 A
  5722. 3630(is)S
  5723. (next)168 3756 A
  5724. 3966(*/)S
  5725. 1620 V
  5726. (12943)210 648 A
  5727. (break;)252 1698 A
  5728. 1710 V
  5729. (12944)210 648 A
  5730. 1362(})S
  5731. 1800 V
  5732. (12945)210 648 A
  5733. (tp->tty_min)462 1362 A
  5734. 1866(=)S
  5735. 1950(0;)S
  5736. 3042(/*)S
  5737. (force)210 3168 A
  5738. (read)168 3420 A
  5739. 3630(to)S
  5740. (succeed)294 3756 A
  5741. 4092(*/)S
  5742. 1890 V
  5743. (12946)210 648 A
  5744. (tp->tty_events)588 1362 A
  5745. 1992(=)S
  5746. 2076(1;)S
  5747. 1980 V
  5748. (12947)210 648 A
  5749. (tty_timelist)504 1362 A
  5750. 1908(=)S
  5751. (tp->tty_timenext;)714 1992 A
  5752. 2070 V
  5753. (12948)210 648 A
  5754. 1110(})S
  5755. 2160 V
  5756. (12949)210 648 A
  5757. 2250 V
  5758. (12950)210 648 A
  5759. 1110(/*)S
  5760. (Let)126 1236 A
  5761. (TTY)126 1404 A
  5762. (know)168 1572 A
  5763. (there)210 1782 A
  5764. 2034(is)S
  5765. (something)378 2160 A
  5766. (afoot.)252 2580 A
  5767. 2874(*/)S
  5768. 2340 V
  5769. (12951)210 648 A
  5770. (interrupt(TTY);)630 1110 A
  5771. 2430 V
  5772. (12952)210 648 A
  5773. 1026(})S
  5774. 2700 V
  5775. (12955)210 648 A
  5776. (/*===========================================================================*)3276 1026 A
  5777. 2790 V
  5778. (12956)210 648 A
  5779. 1068(*)S
  5780. (settimer)336 2370 A
  5781. 4260(*)S
  5782. 2880 V
  5783. (12957)210 648 A
  5784. (*===========================================================================*/)3276 1068 A
  5785. 2970 V
  5786. (12958)210 648 A
  5787. (PRIVATE)294 1026 A
  5788. (void)168 1362 A
  5789. (settimer(tp,)504 1572 A
  5790. (on))126 2118 A
  5791. 3060 V
  5792. (12959)210 648 A
  5793. (tty_t)210 1026 A
  5794. (*tp;)168 1278 A
  5795. 2370(/*)S
  5796. (line)168 2496 A
  5797. 2706(to)S
  5798. (set)126 2832 A
  5799. 3000(or)S
  5800. (unset)210 3126 A
  5801. 3378(a)S
  5802. (timer)210 3462 A
  5803. 3714(on)S
  5804. 3840(*/)S
  5805. 3150 V
  5806. (12960)210 648 A
  5807. (int)126 1026 A
  5808. (on;)126 1194 A
  5809. 2370(/*)S
  5810. (set)126 2496 A
  5811. (timer)210 2664 A
  5812. 2916(if)S
  5813. (true,)210 3042 A
  5814. (otherwise)378 3294 A
  5815. (unset)210 3714 A
  5816. 3966(*/)S
  5817. 3240 V
  5818. (12961)210 648 A
  5819. 1026({)S
  5820. 3330 V
  5821. (12962)210 648 A
  5822. 1026(/*)S
  5823. (Set)126 1152 A
  5824. 1320(or)S
  5825. (unset)210 1446 A
  5826. 1698(a)S
  5827. (TIME)168 1782 A
  5828. (inspired)336 1992 A
  5829. (timer.)252 2370 A
  5830. (This)168 2706 A
  5831. (function)336 2916 A
  5832. 3294(is)S
  5833. (interrupt)378 3420 A
  5834. (sensitive)378 3840 A
  5835. 3420 V
  5836. (12963)210 648 A
  5837. 1068(*)S
  5838. (due)126 1152 A
  5839. 1320(to)S
  5840. (tty_wakeup(),)546 1446 A
  5841. 2034(so)S
  5842. 2160(it)S
  5843. (must)168 2286 A
  5844. 2496(be)S
  5845. (called)252 2622 A
  5846. (from)168 2916 A
  5847. (within)252 3126 A
  5848. (lock()/unlock().)672 3420 A
  5849. 3510 V
  5850. (12964)210 648 A
  5851. 1068(*/)S
  5852. 3600 V
  5853. (12965)210 648 A
  5854. (tty_t)210 1110 A
  5855. (**ptp;)252 1362 A
  5856. 3690 V
  5857. (12966)210 648 A
  5858. 3780 V
  5859. (12967)210 648 A
  5860. 1110(/*)S
  5861. (Take)168 1236 A
  5862. 1446(tp)S
  5863. (out)126 1572 A
  5864. 1740(of)S
  5865. (the)126 1866 A
  5866. (timerlist)378 2034 A
  5867. 2454(if)S
  5868. (present.)336 2580 A
  5869. 2958(*/)S
  5870. 3870 V
  5871. (12968)210 648 A
  5872. (for)126 1110 A
  5873. ((ptp)168 1278 A
  5874. 1488(=)S
  5875. (&tty_timelist;)588 1572 A
  5876. (*ptp)168 2202 A
  5877. 2412(!=)S
  5878. (NULL;)210 2538 A
  5879. (ptp)126 2790 A
  5880. 2958(=)S
  5881. (&(*ptp)->tty_timenext))924 3042 A
  5882. 4008({)S
  5883. 3960 V
  5884. (12969)210 648 A
  5885. 1362(if)S
  5886. ((tp)126 1488 A
  5887. 1656(==)S
  5888. (*ptp))210 1782 A
  5889. 2034({)S
  5890. 4050 V
  5891. (12970)210 648 A
  5892. (*ptp)168 1698 A
  5893. 1908(=)S
  5894. (tp->tty_timenext;)714 1992 A
  5895. 3042(/*)S
  5896. (take)168 3168 A
  5897. 3378(tp)S
  5898. (out)126 3504 A
  5899. 3672(of)S
  5900. (the)126 3798 A
  5901. (list)168 3966 A
  5902. 4176(*/)S
  5903. 4140 V
  5904. (12971)210 648 A
  5905. (break;)252 1698 A
  5906. 4230 V
  5907. (12972)210 648 A
  5908. 1362(})S
  5909. 4320 V
  5910. (12973)210 648 A
  5911. 1110(})S
  5912. 4410 V
  5913. (12974)210 648 A
  5914. 1110(if)S
  5915. ((!on))210 1236 A
  5916. (return;)294 1488 A
  5917. 3042(/*)S
  5918. (unsetting)378 3168 A
  5919. 3588(it)S
  5920. 3714(is)S
  5921. (enough)252 3840 A
  5922. 4134(*/)S
  5923. 4500 V
  5924. (12975)210 648 A
  5925. 4590 V
  5926. (12976)210 648 A
  5927. 1110(/*)S
  5928. (Timeout)294 1236 A
  5929. (occurs)252 1572 A
  5930. (TIME)168 1866 A
  5931. (deciseconds)462 2076 A
  5932. (from)168 2580 A
  5933. (now.)168 2790 A
  5934. 3000(*/)S
  5935. 4680 V
  5936. (12977)210 648 A
  5937. (tp->tty_time)504 1110 A
  5938. 1656(=)S
  5939. (get_uptime())504 1740 A
  5940. 2286(+)S
  5941. (tp->tty_termios.c_cc[VTIME])1134 2370 A
  5942. 3546(*)S
  5943. ((HZ/10);)336 3630 A
  5944. 4770 V
  5945. (12978)210 648 A
  5946. 4860 V
  5947. (12979)210 648 A
  5948. 1110(/*)S
  5949. (Find)168 1236 A
  5950. 1446(a)S
  5951. (new)126 1530 A
  5952. (place)210 1698 A
  5953. 1950(in)S
  5954. (the)126 2076 A
  5955. (list.)210 2244 A
  5956. 2496(*/)S
  5957. 4950 V
  5958. (12980)210 648 A
  5959. (for)126 1110 A
  5960. ((ptp)168 1278 A
  5961. 1488(=)S
  5962. (&tty_timelist;)588 1572 A
  5963. (*ptp)168 2202 A
  5964. 2412(!=)S
  5965. (NULL;)210 2538 A
  5966. (ptp)126 2790 A
  5967. 2958(=)S
  5968. (&(*ptp)->tty_timenext))924 3042 A
  5969. 4008({)S
  5970. 5040 V
  5971. (12981)210 648 A
  5972. 1362(if)S
  5973. ((tp->tty_time)546 1488 A
  5974. 2076(<=)S
  5975. ((*ptp)->tty_time))714 2202 A
  5976. (break;)252 2958 A
  5977. 5130 V
  5978. (12982)210 648 A
  5979. 1110(})S
  5980. 5220 V
  5981. (12983)210 648 A
  5982. (tp->tty_timenext)672 1110 A
  5983. 1824(=)S
  5984. (*ptp;)210 1908 A
  5985. 5310 V
  5986. (12984)210 648 A
  5987. (*ptp)168 1110 A
  5988. 1320(=)S
  5989. (tp;)126 1404 A
  5990. 5400 V
  5991. (12985)210 648 A
  5992. 1110(if)S
  5993. ((tp->tty_time)546 1236 A
  5994. 1824(<)S
  5995. (tty_timeout))504 1908 A
  5996. (tty_timeout)462 2454 A
  5997. 2958(=)S
  5998. (tp->tty_time;)546 3042 A
  5999. 5490 V
  6000. (12986)210 648 A
  6001. 1026(})S
  6002. 5760 V
  6003. (12989)210 648 A
  6004. (/*==========================================================================*)3234 1026 A
  6005. 5850 V
  6006. (12990)210 648 A
  6007. 1068(*)S
  6008. (tty_devnop)420 2370 A
  6009. 4218(*)S
  6010. 5940 V
  6011. (12991)210 648 A
  6012. (*==========================================================================*/)3234 1068 A
  6013. 6030 V
  6014. (12992)210 648 A
  6015. (PUBLIC)252 1026 A
  6016. (void)168 1320 A
  6017. (tty_devnop(tp))588 1530 A
  6018. 6120 V
  6019. (12993)210 648 A
  6020. (tty_t)210 1026 A
  6021. (*tp;)168 1278 A
  6022. 6210 V
  6023. (12994)210 648 A
  6024. 1026({)S
  6025. 8418 V
  6026. EP
  6027. %%Page: 177 177
  6028. BP
  6029. /slant 0 def
  6030. /height 0 def
  6031. 630 V
  6032. 10 R
  6033. 648(MINIX)S
  6034. 976(SOURCE)S
  6035. 1399(CODE)S
  6036. 11 R
  6037. 2089(File:)S
  6038. (src/kernel/tty.c)665 2322 A
  6039. 12 B
  6040. (177)180 4248 A
  6041. 900 V
  6042. 7 LST
  6043. (12995)210 648 A
  6044. 1110(/*)S
  6045. (Some)168 1236 A
  6046. (functions)378 1446 A
  6047. (need)168 1866 A
  6048. (not)126 2076 A
  6049. 2244(be)S
  6050. (implemented)462 2370 A
  6051. 2874(at)S
  6052. (the)126 3000 A
  6053. (device)252 3168 A
  6054. (level.)252 3462 A
  6055. 3756(*/)S
  6056. 990 V
  6057. (12996)210 648 A
  6058. 1026(})S
  6059. 1440 V
  6060. (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
  6061. 1530 V
  6062. (src/kernel/keyboard.c)882 2034 A
  6063. 1620 V
  6064. (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
  6065. 1800 V
  6066. (13000)210 648 A
  6067. 1026(/*)S
  6068. (Keyboard)336 1152 A
  6069. (driver)252 1530 A
  6070. (for)126 1824 A
  6071. (PC's)168 1992 A
  6072. (and)126 2202 A
  6073. (AT's.)210 2370 A
  6074. 1890 V
  6075. (13001)210 648 A
  6076. 1068(*)S
  6077. 1980 V
  6078. (13002)210 648 A
  6079. 1068(*)S
  6080. (Changed)294 1152 A
  6081. 1488(by)S
  6082. (Marcus)252 1614 A
  6083. (Hampel)252 1908 A
  6084. ((04/02/1994))504 2370 A
  6085. 2070 V
  6086. (13003)210 648 A
  6087. 1068(*)S
  6088. 1194(-)S
  6089. (Loadable)336 1278 A
  6090. (keymaps)294 1656 A
  6091. 2160 V
  6092. (13004)210 648 A
  6093. 1068(*/)S
  6094. 2250 V
  6095. (13005)210 648 A
  6096. 2340 V
  6097. (13006)210 648 A
  6098. (#include)336 1026 A
  6099. ("kernel.h")420 1404 A
  6100. 2430 V
  6101. (13007)210 648 A
  6102. (#include)336 1026 A
  6103. (<termios.h>)462 1404 A
  6104. 2520 V
  6105. (13008)210 648 A
  6106. (#include)336 1026 A
  6107. (<signal.h>)420 1404 A
  6108. 2610 V
  6109. (13009)210 648 A
  6110. (#include)336 1026 A
  6111. (<unistd.h>)420 1404 A
  6112. 2700 V
  6113. (13010)210 648 A
  6114. (#include)336 1026 A
  6115. (<minix/callnr.h>)672 1404 A
  6116. 2790 V
  6117. (13011)210 648 A
  6118. (#include)336 1026 A
  6119. (<minix/com.h>)546 1404 A
  6120. 2880 V
  6121. (13012)210 648 A
  6122. (#include)336 1026 A
  6123. (<minix/keymap.h>)672 1404 A
  6124. 2970 V
  6125. (13013)210 648 A
  6126. (#include)336 1026 A
  6127. ("tty.h")294 1404 A
  6128. 3060 V
  6129. (13014)210 648 A
  6130. (#include)336 1026 A
  6131. ("keymaps/us-std.src")840 1404 A
  6132. 3150 V
  6133. (13015)210 648 A
  6134. 3240 V
  6135. (13016)210 648 A
  6136. 1026(/*)S
  6137. (Standard)336 1152 A
  6138. (and)126 1530 A
  6139. 1698(AT)S
  6140. (keyboard.)378 1824 A
  6141. ((PS/2)210 2286 A
  6142. (MCA)126 2538 A
  6143. (implies)294 2706 A
  6144. 3042(AT)S
  6145. (throughout.))504 3168 A
  6146. 3714(*/)S
  6147. 3330 V
  6148. (13017)210 648 A
  6149. (#define)294 1026 A
  6150. (KEYBD)210 1362 A
  6151. (0x60)168 2034 A
  6152. 2370(/*)S
  6153. (I/O)126 2496 A
  6154. (port)168 2664 A
  6155. (for)126 2874 A
  6156. (keyboard)336 3042 A
  6157. (data)168 3420 A
  6158. 3630(*/)S
  6159. 3420 V
  6160. (13018)210 648 A
  6161. 3510 V
  6162. (13019)210 648 A
  6163. 1026(/*)S
  6164. 1152(AT)S
  6165. (keyboard.)378 1278 A
  6166. 1698(*/)S
  6167. 3600 V
  6168. (13020)210 648 A
  6169. (#define)294 1026 A
  6170. (KB_COMMAND)420 1362 A
  6171. (0x64)168 2034 A
  6172. 2370(/*)S
  6173. (I/O)126 2496 A
  6174. (port)168 2664 A
  6175. (for)126 2874 A
  6176. (commands)336 3042 A
  6177. 3420(on)S
  6178. 3546(AT)S
  6179. 3672(*/)S
  6180. 3690 V
  6181. (13021)210 648 A
  6182. (#define)294 1026 A
  6183. (KB_GATE_A20)462 1362 A
  6184. (0x02)168 2034 A
  6185. 2370(/*)S
  6186. (bit)126 2496 A
  6187. 2664(in)S
  6188. (output)252 2790 A
  6189. (port)168 3084 A
  6190. 3294(to)S
  6191. (enable)252 3420 A
  6192. (A20)126 3714 A
  6193. (line)168 3882 A
  6194. 4092(*/)S
  6195. 3780 V
  6196. (13022)210 648 A
  6197. (#define)294 1026 A
  6198. (KB_PULSE_OUTPUT)630 1362 A
  6199. (0xF0)168 2034 A
  6200. 2370(/*)S
  6201. (base)168 2496 A
  6202. (for)126 2706 A
  6203. (commands)336 2874 A
  6204. 3252(to)S
  6205. (pulse)210 3378 A
  6206. (output)252 3630 A
  6207. (port)168 3924 A
  6208. 4134(*/)S
  6209. 3870 V
  6210. (13023)210 648 A
  6211. (#define)294 1026 A
  6212. (KB_RESET)336 1362 A
  6213. (0x01)168 2034 A
  6214. 2370(/*)S
  6215. (bit)126 2496 A
  6216. 2664(in)S
  6217. (output)252 2790 A
  6218. (port)168 3084 A
  6219. 3294(to)S
  6220. (reset)210 3420 A
  6221. (CPU)126 3672 A
  6222. 3840(*/)S
  6223. 3960 V
  6224. (13024)210 648 A
  6225. (#define)294 1026 A
  6226. (KB_STATUS)378 1362 A
  6227. (0x64)168 2034 A
  6228. 2370(/*)S
  6229. (I/O)126 2496 A
  6230. (port)168 2664 A
  6231. (for)126 2874 A
  6232. (status)252 3042 A
  6233. 3336(on)S
  6234. 3462(AT)S
  6235. 3588(*/)S
  6236. 4050 V
  6237. (13025)210 648 A
  6238. (#define)294 1026 A
  6239. (KB_ACK)252 1362 A
  6240. (0xFA)168 2034 A
  6241. 2370(/*)S
  6242. (keyboard)336 2496 A
  6243. (ack)126 2874 A
  6244. (response)336 3042 A
  6245. 3420(*/)S
  6246. 4140 V
  6247. (13026)210 648 A
  6248. (#define)294 1026 A
  6249. (KB_BUSY)294 1362 A
  6250. (0x02)168 2034 A
  6251. 2370(/*)S
  6252. (status)252 2496 A
  6253. (bit)126 2790 A
  6254. (set)126 2958 A
  6255. (when)168 3126 A
  6256. (KEYBD)210 3336 A
  6257. (port)168 3588 A
  6258. (ready)210 3798 A
  6259. 4050(*/)S
  6260. 4230 V
  6261. (13027)210 648 A
  6262. (#define)294 1026 A
  6263. (LED_CODE)336 1362 A
  6264. (0xED)168 2034 A
  6265. 2370(/*)S
  6266. (command)294 2496 A
  6267. 2832(to)S
  6268. (keyboard)336 2958 A
  6269. 3336(to)S
  6270. (set)126 3462 A
  6271. (LEDs)168 3630 A
  6272. 3840(*/)S
  6273. 4320 V
  6274. (13028)210 648 A
  6275. (#define)294 1026 A
  6276. (MAX_KB_ACK_RETRIES)756 1362 A
  6277. (0x1000)252 2160 A
  6278. 2706(/*)S
  6279. (max)126 2832 A
  6280. (#times)252 3000 A
  6281. 3294(to)S
  6282. (wait)168 3420 A
  6283. (for)126 3630 A
  6284. 3798(kb)S
  6285. (ack)126 3924 A
  6286. 4092(*/)S
  6287. 4410 V
  6288. (13029)210 648 A
  6289. (#define)294 1026 A
  6290. (MAX_KB_BUSY_RETRIES)798 1362 A
  6291. (0x1000)252 2202 A
  6292. 2706(/*)S
  6293. (max)126 2832 A
  6294. (#times)252 3000 A
  6295. 3294(to)S
  6296. (loop)168 3420 A
  6297. (while)210 3630 A
  6298. 3882(kb)S
  6299. (busy)168 4008 A
  6300. 4218(*/)S
  6301. 4500 V
  6302. (13030)210 648 A
  6303. (#define)294 1026 A
  6304. (KBIT)168 1362 A
  6305. (0x80)168 2034 A
  6306. 2370(/*)S
  6307. (bit)126 2496 A
  6308. (used)168 2664 A
  6309. 2874(to)S
  6310. (ack)126 3000 A
  6311. (characters)420 3168 A
  6312. 3630(to)S
  6313. (keyboard)336 3756 A
  6314. 4134(*/)S
  6315. 4590 V
  6316. (13031)210 648 A
  6317. 4680 V
  6318. (13032)210 648 A
  6319. 1026(/*)S
  6320. (Miscellaneous.)588 1152 A
  6321. 1782(*/)S
  6322. 4770 V
  6323. (13033)210 648 A
  6324. (#define)294 1026 A
  6325. (ESC_SCAN)336 1362 A
  6326. 2160(1)S
  6327. 2370(/*)S
  6328. (Reboot)252 2496 A
  6329. (key)126 2790 A
  6330. (when)168 2958 A
  6331. (panicking)378 3168 A
  6332. 3588(*/)S
  6333. 4860 V
  6334. (13034)210 648 A
  6335. (#define)294 1026 A
  6336. (SLASH_SCAN)420 1362 A
  6337. 2118(53)S
  6338. 2370(/*)S
  6339. 2496(to)S
  6340. (recognize)378 2622 A
  6341. (numeric)294 3042 A
  6342. (slash)210 3378 A
  6343. 3630(*/)S
  6344. 4950 V
  6345. (13035)210 648 A
  6346. (#define)294 1026 A
  6347. (HOME_SCAN)378 1362 A
  6348. 2118(71)S
  6349. 2370(/*)S
  6350. (first)210 2496 A
  6351. (key)126 2748 A
  6352. 2916(on)S
  6353. (the)126 3042 A
  6354. (numeric)294 3210 A
  6355. (keypad)252 3546 A
  6356. 3840(*/)S
  6357. 5040 V
  6358. (13036)210 648 A
  6359. (#define)294 1026 A
  6360. (DEL_SCAN)336 1362 A
  6361. 2118(83)S
  6362. 2370(/*)S
  6363. (DEL)126 2496 A
  6364. (for)126 2664 A
  6365. (use)126 2832 A
  6366. 3000(in)S
  6367. (CTRL-ALT-DEL)504 3126 A
  6368. (reboot)252 3672 A
  6369. 3966(*/)S
  6370. 5130 V
  6371. (13037)210 648 A
  6372. (#define)294 1026 A
  6373. (CONSOLE)294 1362 A
  6374. 2160(0)S
  6375. 2370(/*)S
  6376. (line)168 2496 A
  6377. (number)252 2706 A
  6378. (for)126 3000 A
  6379. (console)294 3168 A
  6380. 3504(*/)S
  6381. 5220 V
  6382. (13038)210 648 A
  6383. (#define)294 1026 A
  6384. (MEMCHECK_ADR)504 1362 A
  6385. (0x472)210 1992 A
  6386. 2370(/*)S
  6387. (address)294 2496 A
  6388. 2832(to)S
  6389. (stop)168 2958 A
  6390. (memory)252 3168 A
  6391. (check)210 3462 A
  6392. (after)210 3714 A
  6393. (reboot)252 3966 A
  6394. 4260(*/)S
  6395. 5310 V
  6396. (13039)210 648 A
  6397. (#define)294 1026 A
  6398. (MEMCHECK_MAG)504 1362 A
  6399. (0x1234)252 1950 A
  6400. 2370(/*)S
  6401. (magic)210 2496 A
  6402. (number)252 2748 A
  6403. 3042(to)S
  6404. (stop)168 3168 A
  6405. (memory)252 3378 A
  6406. (check)210 3672 A
  6407. 3924(*/)S
  6408. 5400 V
  6409. (13040)210 648 A
  6410. 5490 V
  6411. (13041)210 648 A
  6412. (#define)294 1026 A
  6413. (kb_addr())378 1362 A
  6414. ((&kb_lines[0]))588 2034 A
  6415. 2706(/*)S
  6416. (there)210 2832 A
  6417. 3084(is)S
  6418. (only)168 3210 A
  6419. (one)126 3420 A
  6420. (keyboard)336 3588 A
  6421. 3966(*/)S
  6422. 5580 V
  6423. (13042)210 648 A
  6424. (#define)294 1026 A
  6425. (KB_IN_BYTES)462 1362 A
  6426. 2118(32)S
  6427. 2370(/*)S
  6428. (size)168 2496 A
  6429. 2706(of)S
  6430. (keyboard)336 2832 A
  6431. (input)210 3210 A
  6432. (buffer)252 3462 A
  6433. 3756(*/)S
  6434. 5670 V
  6435. (13043)210 648 A
  6436. 5760 V
  6437. (13044)210 648 A
  6438. (PRIVATE)294 1026 A
  6439. (int)126 1362 A
  6440. (alt1;)210 1530 A
  6441. 2370(/*)S
  6442. (left)168 2496 A
  6443. (alt)126 2706 A
  6444. (key)126 2874 A
  6445. (state)210 3042 A
  6446. 3294(*/)S
  6447. 5850 V
  6448. (13045)210 648 A
  6449. (PRIVATE)294 1026 A
  6450. (int)126 1362 A
  6451. (alt2;)210 1530 A
  6452. 2370(/*)S
  6453. (right)210 2496 A
  6454. (alt)126 2748 A
  6455. (key)126 2916 A
  6456. (state)210 3084 A
  6457. 3336(*/)S
  6458. 5940 V
  6459. (13046)210 648 A
  6460. (PRIVATE)294 1026 A
  6461. (int)126 1362 A
  6462. (capslock;)378 1530 A
  6463. 2370(/*)S
  6464. (caps)168 2496 A
  6465. (lock)168 2706 A
  6466. (key)126 2916 A
  6467. (state)210 3084 A
  6468. 3336(*/)S
  6469. 6030 V
  6470. (13047)210 648 A
  6471. (PRIVATE)294 1026 A
  6472. (int)126 1362 A
  6473. (esc;)168 1530 A
  6474. 2370(/*)S
  6475. (escape)252 2496 A
  6476. (scan)168 2790 A
  6477. (code)168 3000 A
  6478. (detected?)378 3210 A
  6479. 3630(*/)S
  6480. 6120 V
  6481. (13048)210 648 A
  6482. (PRIVATE)294 1026 A
  6483. (int)126 1362 A
  6484. (control;)336 1530 A
  6485. 2370(/*)S
  6486. (control)294 2496 A
  6487. (key)126 2832 A
  6488. (state)210 3000 A
  6489. 3252(*/)S
  6490. 6210 V
  6491. (13049)210 648 A
  6492. (PRIVATE)294 1026 A
  6493. (int)126 1362 A
  6494. (caps_off;)378 1530 A
  6495. 2370(/*)S
  6496. 2496(1)S
  6497. 2580(=)S
  6498. (normal)252 2664 A
  6499. (position,)378 2958 A
  6500. 3378(0)S
  6501. 3462(=)S
  6502. (depressed)378 3546 A
  6503. 3966(*/)S
  6504. 8418 V
  6505. EP
  6506. %%Page: 178 178
  6507. BP
  6508. /slant 0 def
  6509. /height 0 def
  6510. 630 V
  6511. 12 B
  6512. (178)180 648 A
  6513. 11 R
  6514. 1941(File:)S
  6515. (src/kernel/keyboard.c)960 2174 A
  6516. 10 R
  6517. 3402(MINIX)S
  6518. 3730(SOURCE)S
  6519. 4153(CODE)S
  6520. 900 V
  6521. 7 LST
  6522. (13050)210 648 A
  6523. (PRIVATE)294 1026 A
  6524. (int)126 1362 A
  6525. (numlock;)336 1530 A
  6526. 2370(/*)S
  6527. (number)252 2496 A
  6528. (lock)168 2790 A
  6529. (key)126 3000 A
  6530. (state)210 3168 A
  6531. 3420(*/)S
  6532. 990 V
  6533. (13051)210 648 A
  6534. (PRIVATE)294 1026 A
  6535. (int)126 1362 A
  6536. (num_off;)336 1530 A
  6537. 2370(/*)S
  6538. 2496(1)S
  6539. 2580(=)S
  6540. (normal)252 2664 A
  6541. (position,)378 2958 A
  6542. 3378(0)S
  6543. 3462(=)S
  6544. (depressed)378 3546 A
  6545. 3966(*/)S
  6546. 1080 V
  6547. (13052)210 648 A
  6548. (PRIVATE)294 1026 A
  6549. (int)126 1362 A
  6550. (slock;)252 1530 A
  6551. 2370(/*)S
  6552. (scroll)252 2496 A
  6553. (lock)168 2790 A
  6554. (key)126 3000 A
  6555. (state)210 3168 A
  6556. 3420(*/)S
  6557. 1170 V
  6558. (13053)210 648 A
  6559. (PRIVATE)294 1026 A
  6560. (int)126 1362 A
  6561. (slock_off;)420 1530 A
  6562. 2370(/*)S
  6563. 2496(1)S
  6564. 2580(=)S
  6565. (normal)252 2664 A
  6566. (position,)378 2958 A
  6567. 3378(0)S
  6568. 3462(=)S
  6569. (depressed)378 3546 A
  6570. 3966(*/)S
  6571. 1260 V
  6572. (13054)210 648 A
  6573. (PRIVATE)294 1026 A
  6574. (int)126 1362 A
  6575. (shift;)252 1530 A
  6576. 2370(/*)S
  6577. (shift)210 2496 A
  6578. (key)126 2748 A
  6579. (state)210 2916 A
  6580. 3168(*/)S
  6581. 1350 V
  6582. (13055)210 648 A
  6583. 1440 V
  6584. (13056)210 648 A
  6585. (PRIVATE)294 1026 A
  6586. (char)168 1362 A
  6587. (numpad_map[])504 1572 A
  6588. 2118(=)S
  6589. 1530 V
  6590. (13057)210 648 A
  6591. ({'H',)210 1698 A
  6592. ('Y',)168 1950 A
  6593. ('A',)168 2160 A
  6594. ('B',)168 2370 A
  6595. ('D',)168 2580 A
  6596. ('C',)168 2790 A
  6597. ('V',)168 3000 A
  6598. ('U',)168 3210 A
  6599. ('G',)168 3420 A
  6600. ('S',)168 3630 A
  6601. ('T',)168 3840 A
  6602. ('@'};)210 4050 A
  6603. 1620 V
  6604. (13058)210 648 A
  6605. 1710 V
  6606. (13059)210 648 A
  6607. 1026(/*)S
  6608. (Keyboard)336 1152 A
  6609. (structure,)420 1530 A
  6610. 1992(1)S
  6611. (per)126 2076 A
  6612. (console.)336 2244 A
  6613. 2622(*/)S
  6614. 1800 V
  6615. (13060)210 648 A
  6616. (struct)252 1026 A
  6617. (kb_s)168 1320 A
  6618. 1530({)S
  6619. 1890 V
  6620. (13061)210 648 A
  6621. (char)168 1110 A
  6622. (*ihead;)294 1320 A
  6623. 2370(/*)S
  6624. (next)168 2496 A
  6625. (free)168 2706 A
  6626. (spot)168 2916 A
  6627. 3126(in)S
  6628. (input)210 3252 A
  6629. (buffer)252 3504 A
  6630. 3798(*/)S
  6631. 1980 V
  6632. (13062)210 648 A
  6633. (char)168 1110 A
  6634. (*itail;)294 1320 A
  6635. 2370(/*)S
  6636. (scan)168 2496 A
  6637. (code)168 2706 A
  6638. 2916(to)S
  6639. (return)252 3042 A
  6640. 3336(to)S
  6641. (TTY)126 3462 A
  6642. 3630(*/)S
  6643. 2070 V
  6644. (13063)210 648 A
  6645. (int)126 1110 A
  6646. (icount;)294 1278 A
  6647. 2370(/*)S
  6648. 2496(#)S
  6649. (codes)210 2580 A
  6650. 2832(in)S
  6651. (buffer)252 2958 A
  6652. 3252(*/)S
  6653. 2160 V
  6654. (13064)210 648 A
  6655. (char)168 1110 A
  6656. (ibuf[KB_IN_BYTES];)756 1320 A
  6657. 2370(/*)S
  6658. (input)210 2496 A
  6659. (buffer)252 2748 A
  6660. 3042(*/)S
  6661. 2250 V
  6662. (13065)210 648 A
  6663. 1026(};)S
  6664. 2340 V
  6665. (13066)210 648 A
  6666. 2430 V
  6667. (13067)210 648 A
  6668. (PRIVATE)294 1026 A
  6669. (struct)252 1362 A
  6670. (kb_s)168 1656 A
  6671. (kb_lines[NR_CONS];)756 1866 A
  6672. 2520 V
  6673. (13068)210 648 A
  6674. 2610 V
  6675. (13069)210 648 A
  6676. (FORWARD)294 1026 A
  6677. (_PROTOTYPE()462 1362 A
  6678. (int)126 1866 A
  6679. (kb_ack,)294 2034 A
  6680. ((void))252 2370 A
  6681. 2664();)S
  6682. 2700 V
  6683. (13070)210 648 A
  6684. (FORWARD)294 1026 A
  6685. (_PROTOTYPE()462 1362 A
  6686. (int)126 1866 A
  6687. (kb_wait,)336 2034 A
  6688. ((void))252 2412 A
  6689. 2706();)S
  6690. 2790 V
  6691. (13071)210 648 A
  6692. (FORWARD)294 1026 A
  6693. (_PROTOTYPE()462 1362 A
  6694. (int)126 1866 A
  6695. (func_key,)378 2034 A
  6696. ((int)168 2454 A
  6697. (scode))252 2664 A
  6698. 2958();)S
  6699. 2880 V
  6700. (13072)210 648 A
  6701. (FORWARD)294 1026 A
  6702. (_PROTOTYPE()462 1362 A
  6703. (int)126 1866 A
  6704. (scan_keyboard,)588 2034 A
  6705. ((void))252 2664 A
  6706. 2958();)S
  6707. 2970 V
  6708. (13073)210 648 A
  6709. (FORWARD)294 1026 A
  6710. (_PROTOTYPE()462 1362 A
  6711. (unsigned)336 1866 A
  6712. (make_break,)462 2244 A
  6713. ((int)168 2748 A
  6714. (scode))252 2958 A
  6715. 3252();)S
  6716. 3060 V
  6717. (13074)210 648 A
  6718. (FORWARD)294 1026 A
  6719. (_PROTOTYPE()462 1362 A
  6720. (void)168 1866 A
  6721. (set_leds,)378 2076 A
  6722. ((void))252 2496 A
  6723. 2790();)S
  6724. 3150 V
  6725. (13075)210 648 A
  6726. (FORWARD)294 1026 A
  6727. (_PROTOTYPE()462 1362 A
  6728. (int)126 1866 A
  6729. (kbd_hw_int,)462 2034 A
  6730. ((int)168 2538 A
  6731. (irq))168 2748 A
  6732. 2958();)S
  6733. 3240 V
  6734. (13076)210 648 A
  6735. (FORWARD)294 1026 A
  6736. (_PROTOTYPE()462 1362 A
  6737. (void)168 1866 A
  6738. (kb_read,)336 2076 A
  6739. ((struct)294 2454 A
  6740. (tty)126 2790 A
  6741. (*tp))168 2958 A
  6742. 3168();)S
  6743. 3330 V
  6744. (13077)210 648 A
  6745. (FORWARD)294 1026 A
  6746. (_PROTOTYPE()462 1362 A
  6747. (unsigned)336 1866 A
  6748. (map_key,)336 2244 A
  6749. ((int)168 2622 A
  6750. (scode))252 2832 A
  6751. 3126();)S
  6752. 3420 V
  6753. (13078)210 648 A
  6754. 3510 V
  6755. (13079)210 648 A
  6756. 3600 V
  6757. (13080)210 648 A
  6758. (/*===========================================================================*)3276 1026 A
  6759. 3690 V
  6760. (13081)210 648 A
  6761. 1068(*)S
  6762. (map_key0)336 2370 A
  6763. 4260(*)S
  6764. 3780 V
  6765. (13082)210 648 A
  6766. (*===========================================================================*/)3276 1068 A
  6767. 3870 V
  6768. (13083)210 648 A
  6769. 1026(/*)S
  6770. (Map)126 1152 A
  6771. 1320(a)S
  6772. (scan)168 1404 A
  6773. (code)168 1614 A
  6774. 1824(to)S
  6775. 1950(an)S
  6776. (ASCII)210 2076 A
  6777. (code)168 2328 A
  6778. (ignoring)336 2538 A
  6779. (modifiers.)420 2916 A
  6780. 3378(*/)S
  6781. 3960 V
  6782. (13084)210 648 A
  6783. (#define)294 1026 A
  6784. (map_key0(scode))630 1362 A
  6785. 2076(\)S
  6786. 4050 V
  6787. (13085)210 648 A
  6788. (((unsigned))462 1362 A
  6789. (keymap[(scode))588 1866 A
  6790. 2496(*)S
  6791. (MAP_COLS]))420 2580 A
  6792. 4140 V
  6793. (13086)210 648 A
  6794. 4230 V
  6795. (13087)210 648 A
  6796. 4320 V
  6797. (13088)210 648 A
  6798. (/*===========================================================================*)3276 1026 A
  6799. 4410 V
  6800. (13089)210 648 A
  6801. 1068(*)S
  6802. (map_key)294 2370 A
  6803. 4260(*)S
  6804. 4500 V
  6805. (13090)210 648 A
  6806. (*===========================================================================*/)3276 1068 A
  6807. 4590 V
  6808. (13091)210 648 A
  6809. (PRIVATE)294 1026 A
  6810. (unsigned)336 1362 A
  6811. (map_key(scode))588 1740 A
  6812. 4680 V
  6813. (13092)210 648 A
  6814. (int)126 1026 A
  6815. (scode;)252 1194 A
  6816. 4770 V
  6817. (13093)210 648 A
  6818. 1026({)S
  6819. 4860 V
  6820. (13094)210 648 A
  6821. 1026(/*)S
  6822. (Map)126 1152 A
  6823. 1320(a)S
  6824. (scan)168 1404 A
  6825. (code)168 1614 A
  6826. 1824(to)S
  6827. 1950(an)S
  6828. (ASCII)210 2076 A
  6829. (code.)210 2328 A
  6830. 2580(*/)S
  6831. 4950 V
  6832. (13095)210 648 A
  6833. 5040 V
  6834. (13096)210 648 A
  6835. (int)126 1110 A
  6836. (caps,)210 1278 A
  6837. (column;)294 1530 A
  6838. 5130 V
  6839. (13097)210 648 A
  6840. (u16_t)210 1110 A
  6841. (*keyrow;)336 1362 A
  6842. 5220 V
  6843. (13098)210 648 A
  6844. 5310 V
  6845. (13099)210 648 A
  6846. 1110(if)S
  6847. ((scode)252 1236 A
  6848. 1530(==)S
  6849. (SLASH_SCAN)420 1656 A
  6850. 2118(&&)S
  6851. (esc))168 2244 A
  6852. (return)252 2454 A
  6853. ('/';)168 2748 A
  6854. 3042(/*)S
  6855. (don't)210 3168 A
  6856. (map)126 3420 A
  6857. (numeric)294 3588 A
  6858. (slash)210 3924 A
  6859. 4176(*/)S
  6860. 5400 V
  6861. (13100)210 648 A
  6862. 5490 V
  6863. (13101)210 648 A
  6864. (keyrow)252 1110 A
  6865. 1404(=)S
  6866. (&keymap[scode)546 1488 A
  6867. 2076(*)S
  6868. (MAP_COLS];)420 2160 A
  6869. 5580 V
  6870. (13102)210 648 A
  6871. 5670 V
  6872. (13103)210 648 A
  6873. (caps)168 1110 A
  6874. 1320(=)S
  6875. (shift;)252 1404 A
  6876. 5760 V
  6877. (13104)210 648 A
  6878. 1110(if)S
  6879. ((numlock)336 1236 A
  6880. 1614(&&)S
  6881. (HOME_SCAN)378 1740 A
  6882. 2160(<=)S
  6883. (scode)210 2286 A
  6884. 2538(&&)S
  6885. (scode)210 2664 A
  6886. 2916(<=)S
  6887. (DEL_SCAN))378 3042 A
  6888. (caps)168 3462 A
  6889. 3672(=)S
  6890. (!caps;)252 3756 A
  6891. 5850 V
  6892. (13105)210 648 A
  6893. 1110(if)S
  6894. ((capslock)378 1236 A
  6895. 1656(&&)S
  6896. ((keyrow[0])420 1782 A
  6897. 2244(&)S
  6898. (HASCAPS)))378 2328 A
  6899. (caps)168 2748 A
  6900. 2958(=)S
  6901. (!caps;)252 3042 A
  6902. 5940 V
  6903. (13106)210 648 A
  6904. 6030 V
  6905. (13107)210 648 A
  6906. 1110(if)S
  6907. ((alt1)210 1236 A
  6908. 1488(||)S
  6909. (alt2))210 1614 A
  6910. 1866({)S
  6911. 6120 V
  6912. (13108)210 648 A
  6913. (column)252 1362 A
  6914. 1656(=)S
  6915. 1740(2;)S
  6916. 6210 V
  6917. (13109)210 648 A
  6918. 1362(if)S
  6919. ((control)336 1488 A
  6920. 1866(||)S
  6921. (alt2))210 1992 A
  6922. (column)252 2244 A
  6923. 2538(=)S
  6924. 2622(3;)S
  6925. 3042(/*)S
  6926. (Ctrl)168 3168 A
  6927. 3378(+)S
  6928. (Alt1)168 3462 A
  6929. 3672(==)S
  6930. (Alt2)168 3798 A
  6931. 4008(*/)S
  6932. 8418 V
  6933. EP
  6934. %%Page: 179 179
  6935. BP
  6936. /slant 0 def
  6937. /height 0 def
  6938. 630 V
  6939. 10 R
  6940. 648(MINIX)S
  6941. 976(SOURCE)S
  6942. 1399(CODE)S
  6943. 11 R
  6944. 1941(File:)S
  6945. (src/kernel/keyboard.c)960 2174 A
  6946. 12 B
  6947. (179)180 4248 A
  6948. 900 V
  6949. 7 LST
  6950. (13110)210 648 A
  6951. 1362(if)S
  6952. ((caps))252 1488 A
  6953. (column)252 1782 A
  6954. 2076(=)S
  6955. 2160(4;)S
  6956. 990 V
  6957. (13111)210 648 A
  6958. 1110(})S
  6959. (else)168 1194 A
  6960. 1404({)S
  6961. 1080 V
  6962. (13112)210 648 A
  6963. (column)252 1362 A
  6964. 1656(=)S
  6965. 1740(0;)S
  6966. 1170 V
  6967. (13113)210 648 A
  6968. 1362(if)S
  6969. ((caps))252 1488 A
  6970. (column)252 1782 A
  6971. 2076(=)S
  6972. 2160(1;)S
  6973. 1260 V
  6974. (13114)210 648 A
  6975. 1362(if)S
  6976. ((control))378 1488 A
  6977. (column)252 1908 A
  6978. 2202(=)S
  6979. 2286(5;)S
  6980. 1350 V
  6981. (13115)210 648 A
  6982. 1110(})S
  6983. 1440 V
  6984. (13116)210 648 A
  6985. (return)252 1110 A
  6986. (keyrow[column])588 1404 A
  6987. 2034(&)S
  6988. (304HASCAPS;)378 2118 A
  6989. 1530 V
  6990. (13117)210 648 A
  6991. 1026(})S
  6992. 1800 V
  6993. (13120)210 648 A
  6994. (/*===========================================================================*)3276 1026 A
  6995. 1890 V
  6996. (13121)210 648 A
  6997. 1068(*)S
  6998. (kbd_hw_int)420 2370 A
  6999. 4260(*)S
  7000. 1980 V
  7001. (13122)210 648 A
  7002. (*===========================================================================*/)3276 1068 A
  7003. 2070 V
  7004. (13123)210 648 A
  7005. (PRIVATE)294 1026 A
  7006. (int)126 1362 A
  7007. (kbd_hw_int(irq))630 1530 A
  7008. 2160 V
  7009. (13124)210 648 A
  7010. (int)126 1026 A
  7011. (irq;)168 1194 A
  7012. 2250 V
  7013. (13125)210 648 A
  7014. 1026({)S
  7015. 2340 V
  7016. (13126)210 648 A
  7017. 1026(/*)S
  7018. 1152(A)S
  7019. (keyboard)336 1236 A
  7020. (interrupt)378 1614 A
  7021. (has)126 2034 A
  7022. (occurred.)378 2202 A
  7023. (Process)294 2664 A
  7024. (it.)126 3000 A
  7025. 3168(*/)S
  7026. 2430 V
  7027. (13127)210 648 A
  7028. 2520 V
  7029. (13128)210 648 A
  7030. (int)126 1110 A
  7031. (code;)210 1278 A
  7032. 2610 V
  7033. (13129)210 648 A
  7034. (unsigned)336 1110 A
  7035. (km;)126 1488 A
  7036. 2700 V
  7037. (13130)210 648 A
  7038. (register)336 1110 A
  7039. (struct)252 1488 A
  7040. (kb_s)168 1782 A
  7041. (*kb;)168 1992 A
  7042. 2790 V
  7043. (13131)210 648 A
  7044. 2880 V
  7045. (13132)210 648 A
  7046. 1110(/*)S
  7047. (Fetch)210 1236 A
  7048. (the)126 1488 A
  7049. (character)378 1656 A
  7050. (from)168 2076 A
  7051. (the)126 2286 A
  7052. (keyboard)336 2454 A
  7053. (hardware)336 2832 A
  7054. (and)126 3210 A
  7055. (acknowledge)462 3378 A
  7056. (it.)126 3882 A
  7057. 4050(*/)S
  7058. 2970 V
  7059. (13133)210 648 A
  7060. (code)168 1110 A
  7061. 1320(=)S
  7062. (scan_keyboard();)672 1404 A
  7063. 3060 V
  7064. (13134)210 648 A
  7065. 3150 V
  7066. (13135)210 648 A
  7067. 1110(/*)S
  7068. (The)126 1236 A
  7069. (IBM)126 1404 A
  7070. (keyboard)336 1572 A
  7071. (interrupts)420 1950 A
  7072. (twice)210 2412 A
  7073. (per)126 2664 A
  7074. (key,)168 2832 A
  7075. (once)168 3042 A
  7076. (when)168 3252 A
  7077. (depressed,)420 3462 A
  7078. (once)168 3924 A
  7079. (when)168 4134 A
  7080. 3240 V
  7081. (13136)210 648 A
  7082. 1152(*)S
  7083. (released.)378 1236 A
  7084. (Filter)252 1698 A
  7085. (out)126 1992 A
  7086. (the)126 2160 A
  7087. (latter,)294 2328 A
  7088. (ignoring)336 2664 A
  7089. (all)126 3042 A
  7090. (but)126 3210 A
  7091. (the)126 3378 A
  7092. (shift-type)420 3546 A
  7093. (keys.)210 4008 A
  7094. 3330 V
  7095. (13137)210 648 A
  7096. 1152(*)S
  7097. (The)126 1236 A
  7098. (shift-type)420 1404 A
  7099. (keys)168 1866 A
  7100. (29,)126 2076 A
  7101. (42,)126 2244 A
  7102. (54,)126 2412 A
  7103. (56,)126 2580 A
  7104. (58,)126 2748 A
  7105. (and)126 2916 A
  7106. 3084(69)S
  7107. (must)168 3210 A
  7108. 3420(be)S
  7109. (processed)378 3546 A
  7110. (normally.)378 3966 A
  7111. 3420 V
  7112. (13138)210 648 A
  7113. 1152(*/)S
  7114. 3510 V
  7115. (13139)210 648 A
  7116. 3600 V
  7117. (13140)210 648 A
  7118. 1110(if)S
  7119. ((code)210 1236 A
  7120. 1488(&)S
  7121. (0200))210 1572 A
  7122. 1824({)S
  7123. 3690 V
  7124. (13141)210 648 A
  7125. 1362(/*)S
  7126. 1488(A)S
  7127. (key)126 1572 A
  7128. (has)126 1740 A
  7129. (been)168 1908 A
  7130. (released)336 2118 A
  7131. ((high)210 2496 A
  7132. (bit)126 2748 A
  7133. 2916(is)S
  7134. (set).)210 3042 A
  7135. 3294(*/)S
  7136. 3780 V
  7137. (13142)210 648 A
  7138. 1362(km)S
  7139. 1488(=)S
  7140. (map_key0(code)546 1572 A
  7141. 2160(&)S
  7142. (0177);)252 2244 A
  7143. 3870 V
  7144. (13143)210 648 A
  7145. 1362(if)S
  7146. ((km)126 1488 A
  7147. 1656(!=)S
  7148. (CTRL)168 1782 A
  7149. 1992(&&)S
  7150. 2118(km)S
  7151. 2244(!=)S
  7152. (SHIFT)210 2370 A
  7153. 2622(&&)S
  7154. 2748(km)S
  7155. 2874(!=)S
  7156. (ALT)126 3000 A
  7157. 3168(&&)S
  7158. 3294(km)S
  7159. 3420(!=)S
  7160. (CALOCK)252 3546 A
  7161. 3960 V
  7162. (13144)210 648 A
  7163. 2034(&&)S
  7164. 2160(km)S
  7165. 2286(!=)S
  7166. (NLOCK)210 2412 A
  7167. 2664(&&)S
  7168. 2790(km)S
  7169. 2916(!=)S
  7170. (SLOCK)210 3042 A
  7171. 3294(&&)S
  7172. 3420(km)S
  7173. 3546(!=)S
  7174. (EXTKEY))294 3672 A
  7175. 4050 V
  7176. (13145)210 648 A
  7177. (return)252 1698 A
  7178. 1992(1;)S
  7179. 4140 V
  7180. (13146)210 648 A
  7181. 1110(})S
  7182. 4230 V
  7183. (13147)210 648 A
  7184. 4320 V
  7185. (13148)210 648 A
  7186. 1110(/*)S
  7187. (Store)210 1236 A
  7188. (the)126 1488 A
  7189. (character)378 1656 A
  7190. 2076(in)S
  7191. (memory)252 2202 A
  7192. 2496(so)S
  7193. (the)126 2622 A
  7194. (task)168 2790 A
  7195. (can)126 3000 A
  7196. (get)126 3168 A
  7197. 3336(at)S
  7198. 3462(it)S
  7199. (later.)252 3588 A
  7200. 3882(*/)S
  7201. 4410 V
  7202. (13149)210 648 A
  7203. 1110(kb)S
  7204. 1236(=)S
  7205. (kb_addr();)420 1320 A
  7206. 4500 V
  7207. (13150)210 648 A
  7208. 1110(if)S
  7209. ((kb->icount)462 1236 A
  7210. 1740(<)S
  7211. (KB_IN_BYTES))504 1824 A
  7212. 2370({)S
  7213. 4590 V
  7214. (13151)210 648 A
  7215. (*kb->ihead++)504 1362 A
  7216. 1908(=)S
  7217. (code;)210 1992 A
  7218. 4680 V
  7219. (13152)210 648 A
  7220. 1362(if)S
  7221. ((kb->ihead)420 1488 A
  7222. 1950(==)S
  7223. (kb->ibuf)336 2076 A
  7224. 2454(+)S
  7225. (KB_IN_BYTES))504 2538 A
  7226. (kb->ihead)378 3084 A
  7227. 3504(=)S
  7228. (kb->ibuf;)378 3588 A
  7229. 4770 V
  7230. (13153)210 648 A
  7231. (kb->icount++;)546 1362 A
  7232. 4860 V
  7233. (13154)210 648 A
  7234. (tty_table[current].tty_events)1218 1362 A
  7235. 2622(=)S
  7236. 2706(1;)S
  7237. 4950 V
  7238. (13155)210 648 A
  7239. (force_timeout();)672 1362 A
  7240. 5040 V
  7241. (13156)210 648 A
  7242. 1110(})S
  7243. 5130 V
  7244. (13157)210 648 A
  7245. 1110(/*)S
  7246. (Else)168 1236 A
  7247. 1446(it)S
  7248. (doesn't)294 1572 A
  7249. (fit)126 1908 A
  7250. 2076(-)S
  7251. (discard)294 2160 A
  7252. (it.)126 2496 A
  7253. 2664(*/)S
  7254. 5220 V
  7255. (13158)210 648 A
  7256. (return)252 1110 A
  7257. 1404(1;)S
  7258. 1698(/*)S
  7259. (Reenable)336 1824 A
  7260. (keyboard)336 2202 A
  7261. (interrupt)378 2580 A
  7262. 3000(*/)S
  7263. 5310 V
  7264. (13159)210 648 A
  7265. 1026(})S
  7266. 5580 V
  7267. (13162)210 648 A
  7268. (/*==========================================================================*)3234 1026 A
  7269. 5670 V
  7270. (13163)210 648 A
  7271. 1068(*)S
  7272. (kb_read)294 2370 A
  7273. 4218(*)S
  7274. 5760 V
  7275. (13164)210 648 A
  7276. (*==========================================================================*/)3234 1068 A
  7277. 5850 V
  7278. (13165)210 648 A
  7279. (PRIVATE)294 1026 A
  7280. (void)168 1362 A
  7281. (kb_read(tp))462 1572 A
  7282. 5940 V
  7283. (13166)210 648 A
  7284. (tty_t)210 1026 A
  7285. (*tp;)168 1278 A
  7286. 6030 V
  7287. (13167)210 648 A
  7288. 1026({)S
  7289. 6120 V
  7290. (13168)210 648 A
  7291. 1026(/*)S
  7292. (Process)294 1152 A
  7293. (characters)420 1488 A
  7294. (from)168 1950 A
  7295. (the)126 2160 A
  7296. (circular)336 2328 A
  7297. (keyboard)336 2706 A
  7298. (buffer.)294 3084 A
  7299. 3420(*/)S
  7300. 6210 V
  7301. (13169)210 648 A
  7302. 8418 V
  7303. EP
  7304. %%Page: 180 180
  7305. BP
  7306. /slant 0 def
  7307. /height 0 def
  7308. 630 V
  7309. 12 B
  7310. (180)180 648 A
  7311. 11 R
  7312. 1941(File:)S
  7313. (src/kernel/keyboard.c)960 2174 A
  7314. 10 R
  7315. 3402(MINIX)S
  7316. 3730(SOURCE)S
  7317. 4153(CODE)S
  7318. 900 V
  7319. 7 LST
  7320. (13170)210 648 A
  7321. (struct)252 1110 A
  7322. (kb_s)168 1404 A
  7323. (*kb;)168 1614 A
  7324. 990 V
  7325. (13171)210 648 A
  7326. (char)168 1110 A
  7327. (buf[3];)294 1320 A
  7328. 1080 V
  7329. (13172)210 648 A
  7330. (int)126 1110 A
  7331. (scode;)252 1278 A
  7332. 1170 V
  7333. (13173)210 648 A
  7334. (unsigned)336 1110 A
  7335. (ch;)126 1488 A
  7336. 1260 V
  7337. (13174)210 648 A
  7338. 1350 V
  7339. (13175)210 648 A
  7340. 1110(kb)S
  7341. 1236(=)S
  7342. (kb_addr();)420 1320 A
  7343. 1440 V
  7344. (13176)210 648 A
  7345. 1110(tp)S
  7346. 1236(=)S
  7347. (&tty_table[current];)840 1320 A
  7348. 2706(/*)S
  7349. (always)252 2832 A
  7350. (use)126 3126 A
  7351. (the)126 3294 A
  7352. (current)294 3462 A
  7353. (console)294 3798 A
  7354. 4134(*/)S
  7355. 1530 V
  7356. (13177)210 648 A
  7357. 1620 V
  7358. (13178)210 648 A
  7359. (while)210 1110 A
  7360. ((kb->icount)462 1362 A
  7361. 1866(>)S
  7362. 1950(0))S
  7363. 2076({)S
  7364. 1710 V
  7365. (13179)210 648 A
  7366. (scode)210 1362 A
  7367. 1614(=)S
  7368. (*kb->itail++;)546 1698 A
  7369. 3042(/*)S
  7370. (take)168 3168 A
  7371. (one)126 3378 A
  7372. (key)126 3546 A
  7373. (scan)168 3714 A
  7374. (code)168 3924 A
  7375. 4134(*/)S
  7376. 1800 V
  7377. (13180)210 648 A
  7378. 1362(if)S
  7379. ((kb->itail)420 1488 A
  7380. 1950(==)S
  7381. (kb->ibuf)336 2076 A
  7382. 2454(+)S
  7383. (KB_IN_BYTES))504 2538 A
  7384. (kb->itail)378 3084 A
  7385. 3504(=)S
  7386. (kb->ibuf;)378 3588 A
  7387. 1890 V
  7388. (13181)210 648 A
  7389. (lock();)294 1362 A
  7390. 1980 V
  7391. (13182)210 648 A
  7392. (kb->icount--;)546 1362 A
  7393. 2070 V
  7394. (13183)210 648 A
  7395. (unlock();)378 1362 A
  7396. 2160 V
  7397. (13184)210 648 A
  7398. 2250 V
  7399. (13185)210 648 A
  7400. 1362(/*)S
  7401. (Function)336 1488 A
  7402. (keys)168 1866 A
  7403. (are)126 2076 A
  7404. (being)210 2244 A
  7405. (used)168 2496 A
  7406. (for)126 2706 A
  7407. (debug)210 2874 A
  7408. (dumps.)252 3126 A
  7409. 3420(*/)S
  7410. 2340 V
  7411. (13186)210 648 A
  7412. 1362(if)S
  7413. ((func_key(scode)))714 1488 A
  7414. (continue;)378 2244 A
  7415. 2430 V
  7416. (13187)210 648 A
  7417. 2520 V
  7418. (13188)210 648 A
  7419. 1362(/*)S
  7420. (Perform)294 1488 A
  7421. (make/break)420 1824 A
  7422. (processing.)462 2286 A
  7423. 2790(*/)S
  7424. 2610 V
  7425. (13189)210 648 A
  7426. 1362(ch)S
  7427. 1488(=)S
  7428. (make_break(scode);)756 1572 A
  7429. 2700 V
  7430. (13190)210 648 A
  7431. 2790 V
  7432. (13191)210 648 A
  7433. 1362(if)S
  7434. ((ch)126 1488 A
  7435. 1656(<=)S
  7436. (0xFF))210 1782 A
  7437. 2034({)S
  7438. 2880 V
  7439. (13192)210 648 A
  7440. 1698(/*)S
  7441. 1824(A)S
  7442. (normal)252 1908 A
  7443. (character.)420 2202 A
  7444. 2664(*/)S
  7445. 2970 V
  7446. (13193)210 648 A
  7447. (buf[0])252 1698 A
  7448. 1992(=)S
  7449. (ch;)126 2076 A
  7450. 3060 V
  7451. (13194)210 648 A
  7452. ((void))252 1698 A
  7453. (in_process(tp,)588 1992 A
  7454. (buf,)168 2622 A
  7455. (1);)126 2832 A
  7456. 3150 V
  7457. (13195)210 648 A
  7458. 1362(})S
  7459. (else)168 1446 A
  7460. 3240 V
  7461. (13196)210 648 A
  7462. 1362(if)S
  7463. ((HOME)210 1488 A
  7464. 1740(<=)S
  7465. 1866(ch)S
  7466. 1992(&&)S
  7467. 2118(ch)S
  7468. 2244(<=)S
  7469. (INSRT))252 2370 A
  7470. 2664({)S
  7471. 3330 V
  7472. (13197)210 648 A
  7473. 1698(/*)S
  7474. 1824(An)S
  7475. (ASCII)210 1950 A
  7476. (escape)252 2202 A
  7477. (sequence)336 2496 A
  7478. (generated)378 2874 A
  7479. 3294(by)S
  7480. (the)126 3420 A
  7481. (numeric)294 3588 A
  7482. (pad.)168 3924 A
  7483. 4134(*/)S
  7484. 3420 V
  7485. (13198)210 648 A
  7486. (buf[0])252 1698 A
  7487. 1992(=)S
  7488. (ESC;)168 2076 A
  7489. 3510 V
  7490. (13199)210 648 A
  7491. (buf[1])252 1698 A
  7492. 1992(=)S
  7493. ('[';)168 2076 A
  7494. 3600 V
  7495. (13200)210 648 A
  7496. (buf[2])252 1698 A
  7497. 1992(=)S
  7498. (numpad_map[ch)546 2076 A
  7499. 2664(-)S
  7500. (HOME];)252 2748 A
  7501. 3690 V
  7502. (13201)210 648 A
  7503. ((void))252 1698 A
  7504. (in_process(tp,)588 1992 A
  7505. (buf,)168 2622 A
  7506. (3);)126 2832 A
  7507. 3780 V
  7508. (13202)210 648 A
  7509. 1362(})S
  7510. (else)168 1446 A
  7511. 3870 V
  7512. (13203)210 648 A
  7513. 1362(if)S
  7514. ((ch)126 1488 A
  7515. 1656(==)S
  7516. (ALEFT))252 1782 A
  7517. 2076({)S
  7518. 3960 V
  7519. (13204)210 648 A
  7520. 1698(/*)S
  7521. (Choose)252 1824 A
  7522. (lower)210 2118 A
  7523. (numbered)336 2370 A
  7524. (console)294 2748 A
  7525. 3084(as)S
  7526. (current)294 3210 A
  7527. (console.)336 3546 A
  7528. 3924(*/)S
  7529. 4050 V
  7530. (13205)210 648 A
  7531. (select_console(current)924 1698 A
  7532. 2664(-)S
  7533. (1);)126 2748 A
  7534. 4140 V
  7535. (13206)210 648 A
  7536. 1362(})S
  7537. (else)168 1446 A
  7538. 4230 V
  7539. (13207)210 648 A
  7540. 1362(if)S
  7541. ((ch)126 1488 A
  7542. 1656(==)S
  7543. (ARIGHT))294 1782 A
  7544. 2118({)S
  7545. 4320 V
  7546. (13208)210 648 A
  7547. 1698(/*)S
  7548. (Choose)252 1824 A
  7549. (higher)252 2118 A
  7550. (numbered)336 2412 A
  7551. (console)294 2790 A
  7552. 3126(as)S
  7553. (current)294 3252 A
  7554. (console.)336 3588 A
  7555. 3966(*/)S
  7556. 4410 V
  7557. (13209)210 648 A
  7558. (select_console(current)924 1698 A
  7559. 2664(+)S
  7560. (1);)126 2748 A
  7561. 4500 V
  7562. (13210)210 648 A
  7563. 1362(})S
  7564. (else)168 1446 A
  7565. 4590 V
  7566. (13211)210 648 A
  7567. 1362(if)S
  7568. ((AF1)168 1488 A
  7569. 1698(<=)S
  7570. 1824(ch)S
  7571. 1950(&&)S
  7572. 2076(ch)S
  7573. 2202(<=)S
  7574. (AF12))210 2328 A
  7575. 2580({)S
  7576. 4680 V
  7577. (13212)210 648 A
  7578. 1698(/*)S
  7579. (Alt-F1)252 1824 A
  7580. 2118(is)S
  7581. (console,)336 2244 A
  7582. (Alt-F2)252 2622 A
  7583. 2916(is)S
  7584. (ttyc1,)252 3042 A
  7585. (etc.)168 3336 A
  7586. 3546(*/)S
  7587. 4770 V
  7588. (13213)210 648 A
  7589. (select_console(ch)714 1698 A
  7590. 2454(-)S
  7591. (AF1);)210 2538 A
  7592. 4860 V
  7593. (13214)210 648 A
  7594. 1362(})S
  7595. 4950 V
  7596. (13215)210 648 A
  7597. 1110(})S
  7598. 5040 V
  7599. (13216)210 648 A
  7600. 1026(})S
  7601. 5310 V
  7602. (13219)210 648 A
  7603. (/*===========================================================================*)3276 1026 A
  7604. 5400 V
  7605. (13220)210 648 A
  7606. 1068(*)S
  7607. (make_break)420 2370 A
  7608. 4260(*)S
  7609. 5490 V
  7610. (13221)210 648 A
  7611. (*===========================================================================*/)3276 1068 A
  7612. 5580 V
  7613. (13222)210 648 A
  7614. (PRIVATE)294 1026 A
  7615. (unsigned)336 1362 A
  7616. (make_break(scode))714 1740 A
  7617. 5670 V
  7618. (13223)210 648 A
  7619. (int)126 1026 A
  7620. (scode;)252 1194 A
  7621. 2370(/*)S
  7622. (scan)168 2496 A
  7623. (code)168 2706 A
  7624. 2916(of)S
  7625. (key)126 3042 A
  7626. (just)168 3210 A
  7627. (struck)252 3420 A
  7628. 3714(or)S
  7629. (released)336 3840 A
  7630. 4218(*/)S
  7631. 5760 V
  7632. (13224)210 648 A
  7633. 1026({)S
  7634. 5850 V
  7635. (13225)210 648 A
  7636. 1026(/*)S
  7637. (This)168 1152 A
  7638. (routine)294 1362 A
  7639. (can)126 1698 A
  7640. (handle)252 1866 A
  7641. (keyboards)378 2160 A
  7642. (that)168 2580 A
  7643. (interrupt)378 2790 A
  7644. (only)168 3210 A
  7645. 3420(on)S
  7646. (key)126 3546 A
  7647. (depression,)462 3714 A
  7648. 5940 V
  7649. (13226)210 648 A
  7650. 1068(*)S
  7651. 1152(as)S
  7652. (well)168 1278 A
  7653. 1488(as)S
  7654. (keyboards)378 1614 A
  7655. (that)168 2034 A
  7656. (interrupt)378 2244 A
  7657. 2664(on)S
  7658. (key)126 2790 A
  7659. (depression)420 2958 A
  7660. (and)126 3420 A
  7661. (key)126 3588 A
  7662. (release.)336 3756 A
  7663. 6030 V
  7664. (13227)210 648 A
  7665. 1068(*)S
  7666. (For)126 1152 A
  7667. (efficiency,)462 1320 A
  7668. (the)126 1824 A
  7669. (interrupt)378 1992 A
  7670. (routine)294 2412 A
  7671. (filters)294 2748 A
  7672. (out)126 3084 A
  7673. (most)168 3252 A
  7674. (key)126 3462 A
  7675. (releases.)378 3630 A
  7676. 6120 V
  7677. (13228)210 648 A
  7678. 1068(*/)S
  7679. 6210 V
  7680. (13229)210 648 A
  7681. (int)126 1110 A
  7682. (ch,)126 1278 A
  7683. (make;)210 1446 A
  7684. 8418 V
  7685. EP
  7686. %%Page: 181 181
  7687. BP
  7688. /slant 0 def
  7689. /height 0 def
  7690. 630 V
  7691. 10 R
  7692. 648(MINIX)S
  7693. 976(SOURCE)S
  7694. 1399(CODE)S
  7695. 11 R
  7696. 1941(File:)S
  7697. (src/kernel/keyboard.c)960 2174 A
  7698. 12 B
  7699. (181)180 4248 A
  7700. 900 V
  7701. 7 LST
  7702. (13230)210 648 A
  7703. (static)252 1110 A
  7704. (int)126 1404 A
  7705. (CAD_count)378 1572 A
  7706. 1992(=)S
  7707. 2076(0;)S
  7708. 990 V
  7709. (13231)210 648 A
  7710. 1080 V
  7711. (13232)210 648 A
  7712. 1110(/*)S
  7713. (Check)210 1236 A
  7714. (for)126 1488 A
  7715. (CTRL-ALT-DEL,)546 1656 A
  7716. (and)126 2244 A
  7717. 2412(if)S
  7718. (found,)252 2538 A
  7719. (halt)168 2832 A
  7720. (the)126 3042 A
  7721. (computer.)378 3210 A
  7722. (This)168 3630 A
  7723. (would)210 3840 A
  7724. 1170 V
  7725. (13233)210 648 A
  7726. 1152(*)S
  7727. 1236(be)S
  7728. (better)252 1362 A
  7729. (done)168 1656 A
  7730. 1866(in)S
  7731. (keyboard())420 1992 A
  7732. 2454(in)S
  7733. (case)168 2580 A
  7734. (TTY)126 2790 A
  7735. 2958(is)S
  7736. (hung,)210 3084 A
  7737. (except)252 3336 A
  7738. (control)294 3630 A
  7739. (and)126 3966 A
  7740. 1260 V
  7741. (13234)210 648 A
  7742. 1152(*)S
  7743. (alt)126 1236 A
  7744. (are)126 1404 A
  7745. (set)126 1572 A
  7746. 1740(in)S
  7747. (the)126 1866 A
  7748. (high)168 2034 A
  7749. (level)210 2244 A
  7750. (code.)210 2496 A
  7751. 1350 V
  7752. (13235)210 648 A
  7753. 1152(*/)S
  7754. 1440 V
  7755. (13236)210 648 A
  7756. 1110(if)S
  7757. ((control)336 1236 A
  7758. 1614(&&)S
  7759. ((alt1)210 1740 A
  7760. 1992(||)S
  7761. (alt2))210 2118 A
  7762. 2370(&&)S
  7763. (scode)210 2496 A
  7764. 2748(==)S
  7765. (DEL_SCAN))378 2874 A
  7766. 1530 V
  7767. (13237)210 648 A
  7768. 1110({)S
  7769. 1620 V
  7770. (13238)210 648 A
  7771. 1362(if)S
  7772. ((++CAD_count)504 1488 A
  7773. 2034(==)S
  7774. 2160(3))S
  7775. (wreboot(RBT_HALT);)756 2286 A
  7776. 1710 V
  7777. (13239)210 648 A
  7778. (cause_sig(INIT_PROC_NR,)966 1362 A
  7779. (SIGABRT);)378 2370 A
  7780. 1800 V
  7781. (13240)210 648 A
  7782. (return)252 1362 A
  7783. (-1;)126 1656 A
  7784. 1890 V
  7785. (13241)210 648 A
  7786. 1110(})S
  7787. 1980 V
  7788. (13242)210 648 A
  7789. 2070 V
  7790. (13243)210 648 A
  7791. 1110(/*)S
  7792. (High-order)420 1236 A
  7793. (bit)126 1698 A
  7794. (set)126 1866 A
  7795. 2034(on)S
  7796. (key)126 2160 A
  7797. (release.)336 2328 A
  7798. 2706(*/)S
  7799. 2160 V
  7800. (13244)210 648 A
  7801. (make)168 1110 A
  7802. 1320(=)S
  7803. ((scode)252 1404 A
  7804. 1698(&)S
  7805. (0200)168 1782 A
  7806. 1992(?)S
  7807. 2076(0)S
  7808. 2160(:)S
  7809. (1);)126 2244 A
  7810. 2706(/*)S
  7811. 2832(0)S
  7812. 2916(=)S
  7813. (release,)336 3000 A
  7814. 3378(1)S
  7815. 3462(=)S
  7816. (press)210 3546 A
  7817. 3798(*/)S
  7818. 2250 V
  7819. (13245)210 648 A
  7820. 2340 V
  7821. (13246)210 648 A
  7822. 1110(ch)S
  7823. 1236(=)S
  7824. (map_key(scode)546 1320 A
  7825. 1908(&)S
  7826. (0177);)252 1992 A
  7827. 2706(/*)S
  7828. (map)126 2832 A
  7829. 3000(to)S
  7830. (ASCII)210 3126 A
  7831. 3378(*/)S
  7832. 2430 V
  7833. (13247)210 648 A
  7834. 2520 V
  7835. (13248)210 648 A
  7836. (switch)252 1110 A
  7837. ((ch))168 1404 A
  7838. 1614({)S
  7839. 2610 V
  7840. (13249)210 648 A
  7841. (case)168 1362 A
  7842. (CTRL:)210 1572 A
  7843. 2700 V
  7844. (13250)210 648 A
  7845. (control)294 1698 A
  7846. 2034(=)S
  7847. (make;)210 2118 A
  7848. 2790 V
  7849. (13251)210 648 A
  7850. 1698(ch)S
  7851. 1824(=)S
  7852. (-1;)126 1908 A
  7853. 2880 V
  7854. (13252)210 648 A
  7855. (break;)252 1698 A
  7856. 2970 V
  7857. (13253)210 648 A
  7858. (case)168 1362 A
  7859. (SHIFT:)252 1572 A
  7860. 3060 V
  7861. (13254)210 648 A
  7862. (shift)210 1698 A
  7863. 1950(=)S
  7864. (make;)210 2034 A
  7865. 3150 V
  7866. (13255)210 648 A
  7867. 1698(ch)S
  7868. 1824(=)S
  7869. (-1;)126 1908 A
  7870. 3240 V
  7871. (13256)210 648 A
  7872. (break;)252 1698 A
  7873. 3330 V
  7874. (13257)210 648 A
  7875. (case)168 1362 A
  7876. (ALT:)168 1572 A
  7877. 3420 V
  7878. (13258)210 648 A
  7879. 1698(if)S
  7880. ((make))252 1824 A
  7881. 2118({)S
  7882. 3510 V
  7883. (13259)210 648 A
  7884. 2034(if)S
  7885. ((esc))210 2160 A
  7886. (alt2)168 2412 A
  7887. 2622(=)S
  7888. 2706(1;)S
  7889. (else)168 2832 A
  7890. (alt1)168 3042 A
  7891. 3252(=)S
  7892. 3336(1;)S
  7893. 3600 V
  7894. (13260)210 648 A
  7895. 1698(})S
  7896. (else)168 1782 A
  7897. 1992({)S
  7898. 3690 V
  7899. (13261)210 648 A
  7900. (alt1)168 2034 A
  7901. 2244(=)S
  7902. (alt2)168 2328 A
  7903. 2538(=)S
  7904. 2622(0;)S
  7905. 3780 V
  7906. (13262)210 648 A
  7907. 1698(})S
  7908. 3870 V
  7909. (13263)210 648 A
  7910. 1698(ch)S
  7911. 1824(=)S
  7912. (-1;)126 1908 A
  7913. 3960 V
  7914. (13264)210 648 A
  7915. (break;)252 1698 A
  7916. 4050 V
  7917. (13265)210 648 A
  7918. (case)168 1362 A
  7919. (CALOCK:)294 1572 A
  7920. 4140 V
  7921. (13266)210 648 A
  7922. 1698(if)S
  7923. ((make)210 1824 A
  7924. 2076(&&)S
  7925. (caps_off))378 2202 A
  7926. 2622({)S
  7927. 4230 V
  7928. (13267)210 648 A
  7929. (capslock)336 2034 A
  7930. 2412(=)S
  7931. 2496(1)S
  7932. 2580(-)S
  7933. (capslock;)378 2664 A
  7934. 4320 V
  7935. (13268)210 648 A
  7936. (set_leds();)462 2034 A
  7937. 4410 V
  7938. (13269)210 648 A
  7939. 1698(})S
  7940. 4500 V
  7941. (13270)210 648 A
  7942. (caps_off)336 1698 A
  7943. 2076(=)S
  7944. 2160(1)S
  7945. 2244(-)S
  7946. (make;)210 2328 A
  7947. 4590 V
  7948. (13271)210 648 A
  7949. 1698(ch)S
  7950. 1824(=)S
  7951. (-1;)126 1908 A
  7952. 4680 V
  7953. (13272)210 648 A
  7954. (break;)252 1698 A
  7955. 4770 V
  7956. (13273)210 648 A
  7957. (case)168 1362 A
  7958. (NLOCK:)252 1572 A
  7959. 4860 V
  7960. (13274)210 648 A
  7961. 1698(if)S
  7962. ((make)210 1824 A
  7963. 2076(&&)S
  7964. (num_off))336 2202 A
  7965. 2580({)S
  7966. 4950 V
  7967. (13275)210 648 A
  7968. (numlock)294 2034 A
  7969. 2370(=)S
  7970. 2454(1)S
  7971. 2538(-)S
  7972. (numlock;)336 2622 A
  7973. 5040 V
  7974. (13276)210 648 A
  7975. (set_leds();)462 2034 A
  7976. 5130 V
  7977. (13277)210 648 A
  7978. 1698(})S
  7979. 5220 V
  7980. (13278)210 648 A
  7981. (num_off)294 1698 A
  7982. 2034(=)S
  7983. 2118(1)S
  7984. 2202(-)S
  7985. (make;)210 2286 A
  7986. 5310 V
  7987. (13279)210 648 A
  7988. 1698(ch)S
  7989. 1824(=)S
  7990. (-1;)126 1908 A
  7991. 5400 V
  7992. (13280)210 648 A
  7993. (break;)252 1698 A
  7994. 5490 V
  7995. (13281)210 648 A
  7996. (case)168 1362 A
  7997. (SLOCK:)252 1572 A
  7998. 5580 V
  7999. (13282)210 648 A
  8000. 1698(if)S
  8001. ((make)210 1824 A
  8002. 2076(&)S
  8003. (slock_off))420 2160 A
  8004. 2622({)S
  8005. 5670 V
  8006. (13283)210 648 A
  8007. (slock)210 2034 A
  8008. 2286(=)S
  8009. 2370(1)S
  8010. 2454(-)S
  8011. (slock;)252 2538 A
  8012. 5760 V
  8013. (13284)210 648 A
  8014. (set_leds();)462 2034 A
  8015. 5850 V
  8016. (13285)210 648 A
  8017. 1698(})S
  8018. 5940 V
  8019. (13286)210 648 A
  8020. (slock_off)378 1698 A
  8021. 2118(=)S
  8022. 2202(1)S
  8023. 2286(-)S
  8024. (make;)210 2370 A
  8025. 6030 V
  8026. (13287)210 648 A
  8027. 1698(ch)S
  8028. 1824(=)S
  8029. (-1;)126 1908 A
  8030. 6120 V
  8031. (13288)210 648 A
  8032. (break;)252 1698 A
  8033. 6210 V
  8034. (13289)210 648 A
  8035. (case)168 1362 A
  8036. (EXTKEY:)294 1572 A
  8037. 8418 V
  8038. EP
  8039. %%Page: 182 182
  8040. BP
  8041. /slant 0 def
  8042. /height 0 def
  8043. 630 V
  8044. 12 B
  8045. (182)180 648 A
  8046. 11 R
  8047. 1941(File:)S
  8048. (src/kernel/keyboard.c)960 2174 A
  8049. 10 R
  8050. 3402(MINIX)S
  8051. 3730(SOURCE)S
  8052. 4153(CODE)S
  8053. 900 V
  8054. 7 LST
  8055. (13290)210 648 A
  8056. (esc)126 1698 A
  8057. 1866(=)S
  8058. 1950(1;)S
  8059. 990 V
  8060. (13291)210 648 A
  8061. (return(-1);)462 1698 A
  8062. 1080 V
  8063. (13292)210 648 A
  8064. (default:)336 1362 A
  8065. 1170 V
  8066. (13293)210 648 A
  8067. 1698(if)S
  8068. ((!make))294 1824 A
  8069. 2160(ch)S
  8070. 2286(=)S
  8071. (-1;)126 2370 A
  8072. 1260 V
  8073. (13294)210 648 A
  8074. 1110(})S
  8075. 1350 V
  8076. (13295)210 648 A