เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

Ad


OnWorks favicon

fbterm - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ fbterm เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ fbterm เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


FbTerm - เป€เบ›เบฑเบ™เบ•เบปเบงเบˆเบณเบฅเบญเบ‡ TERMinal เบ—เบตเปˆเปƒเบŠเป‰ Frame Buffer เบ—เบตเปˆเป„เบงเบชเบณเบฅเบฑเบš linux

เบชเบฐเบซเบผเบธเบšเบชเบฑเบ‡เบฅเบงเบก


fbterm [เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™] [--] [เบ„เปเบฒเบชเบฑเปˆเบ‡ [เบเบฐเบ—เบนเป‰เบ—เบตเปˆ]]

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”


FbTerm เป€เบ›เบฑเบ™เบ•เบปเบงเบˆเบณเบฅเบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบ›เบฒเบเบ—เบฒเบ‡เบ—เบตเปˆเป„เบงเบชเบณเบฅเบฑเบš linux เบ”เป‰เบงเบเบญเบธเบ›เบฐเบเบญเบ™เป€เบŸเบฃเบกเบšเบฑเบšเป€เบŸเบต เบซเบผเบทเบšเบฑเบ”เบงเบตเบ”เบตเป‚เบญ VESA.
เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบ›เบฐเบเบญเบšเบกเบต:

* เบชเปˆเบงเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆ terminal เบ‚เบญเบ‡ linux kernel เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เปเบกเปˆเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™
* เป€เบฅเบทเบญเบโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹เบ—เบตเปˆโ€‹เบกเบต fontconfig เปเบฅเบฐโ€‹เปเบ•เป‰เบกโ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบ—เบตเปˆโ€‹เบกเบต freetype2โ€‹, เป€เบŠเบฑเปˆเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบเบฑเบš Qt / Gtk+ เบญเบตเบ‡ GUI
เบเบดเบ”
* เป„เบ”เบ™เบฒเบกเบดเบเบชเป‰เบฒเบ‡ / เบ—เปเบฒเบฅเบฒเบเป€เบ–เบดเบ‡ 10 windows เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เปเบฅเปˆเบ™ shell เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
* เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹เบ›เบฐโ€‹เบซเบงเบฑเบ”โ€‹เบชเบฒเบ”โ€‹เป€เบฅเบทเปˆเบญเบ™โ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบ›เปˆเบญเบ‡โ€‹เบขเป‰เบฝเบกโ€‹เบ—เบธเบโ€‹
* เบเบงเบ”โ€‹เบซเบฒโ€‹เบชเบฐโ€‹เบ–เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เปƒเบ™โ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹, เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹เบ„เบงเบฒเบกโ€‹เบเบงเป‰เบฒเบ‡โ€‹เบชเบญเบ‡โ€‹เป€เบ—เบปเปˆเบฒโ€‹
เป€เบŠเบฑเปˆเบ™: เบˆเบตเบ™, เบเบตเปˆเบ›เบธเปˆเบ™ เปเบฅเบฐเบญเบทเปˆเบ™เป†
* เบชเบฐโ€‹เบซเบผเบฑเบšโ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เป€เบžเบตเปˆเบกโ€‹เป€เบ•เบตเบกโ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ›เบธเปˆเบกโ€‹เบฎเป‰เบญเบ™โ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบšเบดเบ™โ€‹เป„เบ”เป‰โ€‹
* เบชเบณเป€เบ™เบปเบฒ/เบงเบฒเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบเป„เบงเป‰เบเปˆเบญเบ™เปœเป‰เบฒเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เปœเป‰เบฒเบ•เปˆเบฒเบ‡เบ”เป‰เบงเบเป€เบกเบปเป‰เบฒ เป€เบกเบทเปˆเบญเป€เบŠเบตเบšเป€เบงเบต gpm เบเบณเบฅเบฑเบ‡เปเบฅเปˆเบ™เบขเบนเปˆ
* เบ›เปˆเบฝเบ™โ€‹เบ—เบดเบ”โ€‹เบ—เบฒเบ‡โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹, aka เบžเบทเบ”โ€‹เบซเบกเบนเบ™โ€‹เบงเบฝเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹
* เบเบญเบšเบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบ™เป‰เบณเปœเบฑเบเป€เบšเบปเบฒเบเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณเบฅเบนเบเบ„เป‰เบฒ-เป€เบŠเบตเบšเป€เบงเบต
* เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบซเบ™เบปเบกโ€‹เบญเบปเบกโ€‹เบ•เบฒโ€‹

OPTIONS


เบ„เปเบฒเบชเบฑเปˆเบ‡ [เบเบฐเบ—เบนเป‰เบ—เบตเปˆ] เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบกเบญเบšเปƒเบซเป‰เป€เบžเบทเปˆเบญ override เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ shell.
เบ›เบปเบเบเบฐเบ•เบด FbTerm เบเบงเบ”เป€เบšเบดเปˆเบ‡ SHELL เบ•เบปเบงเปเบ›. เบ–เป‰เบฒเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ•เบฑเป‰เบ‡, เบกเบฑเบ™เบžเบฐเบเบฒเบเบฒเบกเปƒเบŠเป‰เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰
เป€เบ‚เบปเป‰เบฒโ€‹เบชเบนเปˆโ€‹เบฅเบฐโ€‹เบšเบปเบš shell เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เป„เบงเป‰โ€‹เปƒเบ™โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เบœเปˆเบฒเบ™โ€‹. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹, / เบ–เบฑเบ‡ / sh เบˆเบฐโ€‹เป€เบ›เบฑเบ™
เปƒเบŠเป‰. เบ—เปˆเบฒเบ™เบ„เบงเบ™เปƒเบŠเป‰ -- argument เป€เบžเบทเปˆเบญเปเบเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ‚เบญเบ‡ FbTerm เบญเบญเบเบˆเบฒเบเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡
เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบเบฑเบš เบ„เปเบฒเบชเบฑเปˆเบ‡.

FbTerm เบ—เปเบฒเบญเบดเบ”เปƒเบŠเป‰เบ„เปˆเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™ arguments เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ
เป€เบญเบเบฐเบชเบฒเบ™ $HOME/.fbtermrc. เบ–เป‰เบฒเป„เบŸเบฅเปŒเบ™เบฑเป‰เบ™เบšเปเปˆเบกเบต, FbTerm เบˆเบฐเบชเป‰เบฒเบ‡เบกเบฑเบ™เบ”เป‰เบงเบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

-เบŠ, - เบŠเปˆเบงเบ
เบชเบฐเปเบ”เบ‡เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเปเบฅเบฐเบญเบญเบ

-V, - เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบชเบฐเปเบ”เบ‡เบชเบฐเบšเบฑเบš FbTerm เปเบฅเบฐเบญเบญเบ

- เปƒเบ™โ€‹, -- verbose
เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบกเบนเบ™ FbTerm เบžเบดเป€เบชเบ”

-n, --font-names=เบ‚เปเป‰เบ„เบงเบฒเบก
เบฅเบฐเบšเบธเบŠเบทเปˆเบ•เบฐเบเบนเบ™เบŸเบญเบ™

- เปเบกเปˆเบ™เปเบฅเป‰เบง, --font-size=num
เบฅเบฐเบšเบธเบ‚เบฐเบซเบ™เบฒเบ” font pixels

--font-width=num
เบšเบฑเบ‡เบ„เบฑเบšเบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™

--font-height=num
เบšเบฑเบ‡เบ„เบฑเบšเบ„เบงเบฒเบกเบชเบนเบ‡เบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™

-f, --color-foreground=num
เบฅเบฐเบšเบธเบชเบตเบžเบทเป‰เบ™เปœเป‰เบฒ

-b, --color-background=num
เบฅเบฐเบšเบธเบชเบตเบžเบทเป‰เบ™เบซเบผเบฑเบ‡

-e, --text-encodes=เบ‚เปเป‰เบ„เบงเบฒเบก
เบฅเบฐเบšเบธเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ‚เปเป‰เบ„เบงเบฒเบกเป€เบžเบตเปˆเบกเป€เบ•เบตเบก

-เบ, --เบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™-เบเบงเป‰เบฒเบ‡
เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฑเบเบชเบฐเบ™เบฐเบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เบ—เบตเปˆเบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™เป€เบ›เบฑเบ™เบเบงเป‰เบฒเบ‡

-r, --screen-rotate=num
เบฅเบฐเบšเบธเบ—เบดเบ”เบ—เบฒเบ‡เบ‚เบญเบ‡เบˆเปเบชเบฐเปเบ”เบ‡เบœเบปเบ™

-i, --input-method=เบ‚เปเป‰เบ„เบงเบฒเบก
เบฅเบฐเบšเบธเป‚เบ„เบ‡เบเบฒเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™

--cursor-shape=num
เบฅเบฐเบšเบธเบฎเบนเบšเบฎเปˆเบฒเบ‡เป€เบ„เบตเป€เบŠเบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™

--cursor-interval=num
เบฅเบฐเบšเบธเป„เบฅเบเบฐเบซเปˆเบฒเบ‡ flash เบ•เบปเบงเบเบฐเบžเบดเบš

--vesa-mode=num
เบฅเบฐเบšเบธเป‚เปเบ”เบงเบดเบ”เบตเป‚เบญ VESA

--vesa-mode=list
เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญ VESA เบ—เบตเปˆโ€‹เบกเบตโ€‹เบขเบนเปˆโ€‹

เป€เบšเบดเปˆเบ‡เบ„เปเบฒเป€เบซเบฑเบ™เปƒเบ™ $HOME/.fbtermrc เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

เบชเบฑเป‰เบ™ เบšเบปเบ”เบชเบฐเบซเบผเบธเบš


เปเบ›เป‰เบ™เบžเบดเบก:
CTRL_ALT_E: เบญเบญเบเบˆเบฒเบ FbTerm
CTRL_ALT_C: เบชเป‰เบฒเบ‡เปœเป‰เบฒเบ•เปˆเบฒเบ‡เปƒเปเปˆ
CTRL_ALT_D: เบ—เปเบฒเบฅเบฒเบเบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบ›เบฐเบˆเบธเบšเบฑเบ™
CTRL_ALT_1: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 1
CTRL_ALT_2: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 2
CTRL_ALT_3: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 3
CTRL_ALT_4: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 4
CTRL_ALT_5: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 5
CTRL_ALT_6: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 6
CTRL_ALT_7: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 7
CTRL_ALT_8: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 8
CTRL_ALT_9: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 9
CTRL_ALT_0: เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 10
SHIFT_LEFT: เบชเบฐเบซเบผเบฑเบšเป„เบ›เปœเป‰เบฒเบˆเปเบเปˆเบญเบ™เปœเป‰เบฒ
SHIFT_RIGHT: เบชเบฐเบซเบผเบฑเบšเป„เบ›เปœเป‰เบฒเบ•เปˆเบฒเบ‡เบ•เปเปˆเป„เบ›
SHIFT_PAGEUP: เบ›เบฐเบซเบงเบฑเบ”เบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เบ‚เบถเป‰เบ™
SHIFT_PAGEDOWN: เบ›เบฐเบซเบงเบฑเบ”เบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เบฅเบปเบ‡
CTRL_ALT_F1: เบชเบฐเบซเบผเบฑเบšเป„เบ›เบซเบฒเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™
CTRL_ALT_F2 เป€เบ›เบฑเบ™ CTRL_ALT_F6: เบชเบฐเบซเบผเบฑเบšเป„เบ›เปƒเบŠเป‰เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก
CTRL_SPACE: เบชเบฐเบซเบผเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™
CTRL_ALT_K: เบ‚เป‰เบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™

เบซเบ™เบน:
เบเป‰เบฒเบเป€เบกเบทเปˆเบญเบเบปเบ”เบ›เบธเปˆเบกเบŠเป‰เบฒเบเบฅเบปเบ‡: เป€เบฅเบทเบญเบเบ‚เปเป‰เบ„เบงเบฒเบก
เบ„เบฅเบดเบเบชเบญเบ‡เป€เบ—เบทเปˆเบญเบ”เป‰เบงเบเบ›เบธเปˆเบกเบŠเป‰เบฒเบ: เป€เบฅเบทเบญเบเบ‚เปเป‰เบ„เบงเบฒเบกเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”
เบ„เบฅเบดเบเบ”เป‰เบงเบเบ›เบธเปˆเบกเบ‚เบงเบฒ: เบงเบฒเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบ

เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเบฒเบ™เบเบฐเบ—เบณเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ, เบเบฐเบฅเบธเบ™เบฒเบฅเบญเบ‡เป€เบฎเบฑเบ”เบ„เบทเบ™เปƒเปเปˆเบ”เป‰เบงเบเบเบฒเบ™เบเบปเบ”เบ›เบธเปˆเบก shift
เบฅเบปเบ‡.

เบ‚เบญเบš BUFFER เบญเบธเบ›เบฐเบเบญเบ™


เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ” FbTerm, เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบกเบตเบญเบธเบ›เบฐเบเบญเบ™ buffer เบเบญเบšเบขเบนเปˆเปƒเบ™เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เปเบฅเบฐเบ—เปˆเบฒเบ™.
เบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบเบฒเบ™เบญเปˆเบฒเบ™ / เบ‚เบฝเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบเบฑเบšเบกเบฑเบ™. เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบง FbTerm เบžเบฐเบเบฒเบเบฒเบกเป€เบ›เบตเบ” /dev/fb0 เปเบฅเบฐ
/dev/fb/0, เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก "FRAMEBUFFER" เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญ override เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ™เบตเป‰
เบžเบถเบ”เบ•เบด เบเบณ.

VESA VIDEO เบญเบธเบ›เบฐเบเบญเบ™


เบˆเบฒเบเบฎเบธเปˆเบ™ 1.6, FbTerm เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบšเบฑเบ”เบงเบตเบ”เบตเป‚เบญ VESA. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, FbTerm เบžเบฐเบเบฒเบเบฒเบกเบเบญเบš
buffer เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹, เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ„เบงเบฒเบกโ€‹เบฅเบปเป‰เบกโ€‹เป€เบซเบผเบงโ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบฒเบกโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™ VESA เบเบฑเบšโ€‹เบ„เบงเบฒเบกโ€‹เบฅเบฐโ€‹เบญเบฝเบ”โ€‹เบชเบนเบ‡โ€‹เบชเบธเบ”โ€‹เปเบฅเบฐโ€‹
เบ„เบงเบฒเบกเป€เบฅเบดเบเบ‚เบญเบ‡เบชเบต. เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ "vesa-mode" เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบกเบญเบšเปƒเบซเป‰เบžเบฝเบ‡เปเบ•เปˆเป€เบ›เบตเบ”เบญเบธเบ›เบฐเบเบญเบ™ VESA เบเบฑเบš
เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹เบ—เบตเปˆโ€‹เบฅเบฐโ€‹เบšเบธโ€‹เป„เบงเป‰โ€‹. เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เป‚เบซเบกเบ”เบงเบดเบ”เบตเป‚เบญเบ—เบตเปˆเบกเบตเบขเบนเปˆเบชเปเบฒเบฅเบฑเบšเบšเบฑเบ” VESA เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ "fbterm
--vesa-mode=list".

เป€เบญเบปเบฒโ€‹เปƒเบˆโ€‹เปƒเบชเปˆ: 1โ€‹) เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™ VESA เบฎเบฝเบโ€‹เบฎเป‰เบญเบ‡โ€‹เปƒเบซเป‰โ€‹เบกเบตโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบžเบดโ€‹เป€เบชเบ”โ€‹เบฎเบฒเบโ€‹เป€เบžเบทเปˆเบญโ€‹เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹; 2) เบขเปˆเบฒเบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰ VESA
เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™โ€‹เปƒเบ™โ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™ buffer เป€เบŸเบฃเบกโ€‹เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹, เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เบ‚เบฑเบ”โ€‹เปเบเปˆเบ‡โ€‹เบเบฑเบšโ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบ„เบปเบ™โ€‹
เบญเบทเปˆเบ™เป†.

FONT


FbTerm เบฎเบฝเบเบฎเป‰เบญเบ‡ fontconfig เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบšเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ•เบปเบงเบญเบฑเบเบชเบญเบ™, เบ–เป‰เบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เปเบฒเบญเบดเบ”เบšเปเปˆเบกเบต glyph.
เบชเปเบฒเบฅเบฑเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เบชเบฐเปเบ”เบ‡, เบกเบฑเบ™เบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเบชเบญเบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เบตเบชเบฒเบก, ... เปเบฅเบฐเบญเบทเปˆเบ™เป†, เบœเบนเป‰เปƒเบŠเป‰
เบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบชเบฑเปˆเบ‡เบ”เป‰เบงเบ "fbterm -v".

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบกเบฑเบเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเป€เบฅเบทเบญเบเป‚เบ”เบ FbTerm, เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ "fc-list" เป€เบžเบทเปˆเบญเป€เบญเบปเบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆ,
เป€เบฅเบทเบญเบเบฅเบฒเบเบเบฒเบ™เบ—เบตเปˆเบกเบฑเบเป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "font-names". เบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบ›เบธเบ‡เปเบเป‰เป„เบ‚เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป„เบ”เป‰
file เบ‚เบญเบ‡ fontconfig, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ›เปˆเบฝเบ™เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เป‚เบ›เบผเปเบเบผเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ fontconfig!

เบ‚เปเป‰โ€‹เบ„เบงเบฒเบก เบเบณเบฅเบฑเบ‡เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”


เป‚เบ”เบเบเบฒเบ™เบ™เบณเปƒเบŠเป‰ iconv, FbTerm เบˆเบฐเบ›เปˆเบฝเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบญเบทเปˆเบ™เป„เบ›เบชเบนเปˆเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบžเบฒเบเปƒเบ™ UTF-8. เปƒเบ™โ€‹เบเบฒเบ™โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹,
FbTerm เบเบงเบ”เบชเบญเบšเบ•เบปเบงเปเบ› LC_CTYPE เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ‚เปเป‰เบ„เบงเบฒเบกเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบœเบนเบเบกเบฑเบ”เบเบฑเบš
เบ—เบฒเบ‡เบฅเบฑเบ” CTRL_ALT_F1. เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เบชเบนเบ‡โ€‹เป€เบ–เบดเบ‡ 5 เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เป€เบžเบตเปˆเบกโ€‹เป€เบ•เบตเบกโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ ".เบ‚เปเป‰โ€‹เบ„เบงเบฒเบก-
เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”", เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบ–เบฒเบ™เบฐเบœเบนเป‰เปƒเบŠเป‰เบˆเบตเบ™, เบ—เปˆเบฒเบ™เบ•เบฑเป‰เบ‡ "text-encodings=gbk,big5", เบ—เบฒเบ‡เบฅเบฑเบ”.
CTRL_ALT_F2 เบˆเบฐเบœเบนเบเบกเบฑเบ”เบเบฑเบš gbk, เปเบฅเบฐ CTRL_ALT_F3 เบœเบนเบเบกเบฑเบ”เบเบฑเบš big5.

เปƒเบ™เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ” CJK เบกเบตเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เบ—เบตเปˆเบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เบ‚เบญเบ‡
เปเบ„เบš เบซเบผเบทเบเบงเป‰เบฒเบ‡ เบ‚เบถเป‰เบ™เบเบฑเบšเบšเปเบฅเบดเบšเบปเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ™เบณเปƒเบŠเป‰. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, FbTerm เบ›เบฐเบ•เบดเบšเบฑเบ”
เบžเบงเบเบกเบฑเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เปเบ„เบš, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "เบเบงเป‰เบฒเบ‡โ€‹เบ‚เบงเบฒเบ‡" เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™
เบžเบถเบ”เบ•เบด เบเบณ.

BACKGROUND เบฎเบนเบšเบžเบฒเบš


FbTerm เบšเปเปˆเป„เบ”เป‰เป‚เบซเบฅเบ”เปเบฅเบฐเบงเบดเป€เบ„เบฒเบฐเป„เบŸเบฅเปŒเบฎเบนเบšเบžเบฒเบšเปƒเบ”เป†เบ—เบตเปˆเบกเบตเบฎเบนเบšเปเบšเบšเบ•เปˆเบฒเบ‡เป†เป‚เบ”เบเบเบปเบ‡, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ
เบ–เปˆเบฒเบเบฎเบนเบšเปœเป‰เบฒเบˆเปเบ‚เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™เป€เบŸเบฃเบก buffer เปƒเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ–เป‰เบฒเบ•เบปเบงเปเบ› FBTERM_BACKGROUND_IMAGE
เบ–เบทเบเบเปเบฒเบ™เบปเบ”, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบŠเป‰เบเบฒเบ™เบชเบฑเบเบขเบฒเบซเบ™เป‰เบฒเบˆเปเบ™เบตเป‰เป€เบ›เบฑเบ™เบžเบทเป‰เบ™เบซเบฅเบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบ„เบงเบฒเบก. เป€เบžเบทเปˆเบญ
เป€เบ›เบตเบ”โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹, เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบ„เบฑเป‰เบ‡โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เป€เบญเบปเบฒโ€‹เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เป€เบžเบทเปˆเบญโ€‹เบเบญเบšโ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™ buffer เบเบฑเบšโ€‹
เบ•เบปเบงโ€‹เป€เบšเบดเปˆเบ‡โ€‹เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹. script wrapper เป‚เบ”เบเปƒเบŠเป‰ fbv เปเบกเปˆเบ™เบฅเบฐเบšเบธเป„เบงเป‰เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰:

#!/ bin / bash

# fbterm-bi: a wrapper script to เป€เบฎเบฑเบ”เปƒเบซเป‰เบชเบฒเบกเบฒเบ” เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบกเบฒ เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ เบเบฑเบš fbterm
# เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰: fbterm-bi /path/to/เบฎเบนเบšเบžเบฒเบš fbterm-เบ—เบฒเบ‡เป€เบฅเบทเบญเบ

echo - เบšเปเปˆ "\e[?25l" # เบŠเปˆเบญเบ™ cursor

fbv - ciuker "$1" << EOF
q
EOF

เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบเบฒเบ™เบชเบปเปˆเบ‡เบญเบญเบ FBTERM_BACKGROUND_IMAGE=1
exec fbterm "$@"

เป€เบญเบปเบฒโ€‹เปƒเบˆโ€‹เปƒเบชเปˆโ€‹: 1โ€‹) เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เป€เบ›เบตเบ”โ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เปƒเบ™โ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™โ€‹เป€เบŸเบฃเบก buffer เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เป€เบฅเบดเบ 8bppโ€‹,
เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ FbTerm เบ›เปˆเบฝเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡; 2) เบ–เป‰เบฒเบเบฒเบ™เบชเบฑเบเบขเบฒเบซเบ™เป‰เบฒเบˆเป
เปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบเบฎเบนเบšเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš, เบžเบฐเบเบฒเบเบฒเบกเปƒเบŠเป‰ buffer เป€เบŸเบฃเบกเบ›เบดเบ”เบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เป„เบง
เบญเบธเบ›เบฐเบเบญเบ™.

256 เบชเบต เบเบฒเบ™เบ„เบปเป‰เบ™เบ„เป‰เบงเบฒ


FbTerm เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบฎเบนเบšเปเบšเบšเบชเบต 256 เบ‚เบญเบ‡ xterm. 16 เบชเบตเบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบชเบตเบขเบนเปˆเบ›เบฒเบเบเบญเบ”. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบต cube เบชเบต 6x6x6, เปเบฅเบฐ 24 เป‚เบ•เบ™เบชเบตเบ‚เบตเป‰เป€เบ–เบปเปˆเบฒ. เปเบ•เปˆ
เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบชเบต 256 เบ‚เบญเบ‡ xterm เบ‚เบฑเบ”เปเบเป‰เบ‡เบเบฑเบšเบฅเปเบฒเบ”เบฑเบš linux เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบ
FbTerm, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบชเปˆเบงเบ™เบ•เบปเบงเป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰:

ESC [ 1 ; n } เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰ เบžเบทเป‰เบ™เบ—เบตเปˆ เบชเบต to n (0 - 255)
ESC [ 2 ; n } เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰ เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบกเบฒ เบชเบต to n (0 - 255)
ESC [ 3 ; n ; r ; g ; b } เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰ เบชเบต n to (r, g, b) , n, r, g, b เบ—เบฑเบ‡เบซเบกเบปเบ” in (0 -
255)

เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ terminfo เปƒเบซเบกเปˆเบ—เบตเปˆเบกเบตเบŠเบทเปˆเบงเปˆเบฒ "fbterm" เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™เปเบฒเปƒเบŠเป‰เบฅเปเบฒเบ”เบฑเบšเบชเปˆเบงเบ™เบ•เบปเบงเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ—เบฑเบ‡เบซเบกเบปเบ”
เป‚เบ„เบ‡เบเบฒเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ terminfo เบ„เบงเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบกเบฑเบ™. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, FbTerm เบเปเบฒเบ™เบปเบ”เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก
เบ•เบปเบงเปเบ› "TERM" เบเบฑเบšเบ„เปˆเบฒ "linux", เบœเบนเป‰เปƒเบŠเป‰เบ•เป‰เบญเบ‡เบเบฒเบ™เปเบฅเปˆเบ™ "TERM=fbterm /path/to/program" เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™.
256 เป‚เบซเบกเบ”เบชเบต.

เบ›เบฑเบ”เป„เบˆเบ™เปเบฒเป€เบ‚เบปเป‰เบฒ เบงเบดเบ—เบตเบเบฒเบ™


เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบเบปเบ‡เปƒเบ™ FbTerm, เบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเบฅเบนเบเบ„เป‰เบฒ-เป€เบŠเบตเบšเป€เบงเบต
เป‚เบ„เบ‡เบฎเปˆเบฒเบ‡เบเบฒเบ™เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบ™เบตเป‰. FbTerm เป€เบฎเบฑเบ”เปœเป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เบฅเบนเบเบ„เป‰เบฒ, เป‚เบ›เบฃเปเบเบฃเบก IM เปเบšเบšเบ”เปˆเบฝเบงเป€เบ›เบฑเบ™
เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เปƒเบ™เบ–เบฒเบ™เบฐเป€เบ›เบฑเบ™เบœเบนเป‰เปƒเบŠเป‰ IM เบ›เบปเบเบเบฐเบ•เบด, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป‚เบ„เบ‡เบเบฒเบ™ IM เบ—เบตเปˆเบ‚เบฝเบ™เบชเปเบฒเบฅเบฑเบš FbTerm, เปเบฅเบฐเบฅเบฐเบšเบธเบกเบฑเบ™เป€เบ›เบฑเบ™
เบกเบนเบ™เบ„เปˆเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบ "เบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™". CTRL_SPACE เปเบกเปˆเบ™เบ—เบฒเบ‡เบฅเบฑเบ”เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰/เบ›เบดเบ”เบเบฒเบ™เบ™เบณเปƒเบŠเป‰
เบงเบดเบ—เบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐ CTRL_ALT_K เบญเบฒเบ”เบˆเบฐเบ–เบทเบเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ‚เป‰เบฒเป‚เบ›เบฃเปเบเบก IM เป€เบกเบทเปˆเบญเบกเบฑเบ™เบ„เป‰เบฒเบ‡เป„เบงเป‰.

เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž เบซเบกเบฒเบเป€เบซเบ”


FbTerm เบžเบฐเบเบฒเบเบฒเบกเบ›เปˆเบฝเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบเบฐเปเบˆ linux kernel เป€เบžเบทเปˆเบญเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบฒเบ‡เบฅเบฑเบ”, เป€เบŠเบดเปˆเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™.
SYS_TTY_CONFIG เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เปเบ•เปˆ kernel เป€เบงเบตเบŠเบฑเปˆเบ™ 2.6.15. เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒ FbTerm เบ„เบงเบ™เบˆเบฐเป€เบ›เบฑเบ™ setuid
0 เป‚เบ›เบฅเปเบเบฅเบกเป€เบžเบทเปˆเบญเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบฎเบฒเบเปƒเบŠเป‰เบ—เบฒเบ‡เบฅเบฑเบ”. FbTerm เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบชเบฐโ€‹เบซเบผเบฑเบšโ€‹เบเบฑเบšโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบ‚เบญเบ‡โ€‹เบฎเบฒเบโ€‹
เป€เบ›เบฑเบ™เบเบฒเบ™เบŠเบปเปˆเบงเบ„เบฒเบงเป€เบกเบทเปˆเบญเบ›เปˆเบฝเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบซเบผเบฑเบ, เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบซเบผเบฒเบ
เบšเบฑเบ™เบซเบฒ. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบšเปเปˆเบกเบฑเบเบญเบฑเบ™เบ™เบตเป‰เปเบ—เป‰เป† เปเบฅเบฐเบกเบต linux kernel เบ—เบตเปˆเบกเบตเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ
เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เปƒเบซเป‰เปƒเบŠเป‰เบ‡เบฒเบ™, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰เบชเบฒเบกเบฒเบ”เปƒเบซเป‰ binary เบŠเบธเบ”เบเปˆเบญเบเบ‚เบญเบ‡เบญเปเบฒเบ™เบฒเบ”เบ‚เบญเบ‡เบฎเบฒเบเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ setuid 0 (kernel เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™ 2.6.27 เบ›เบฐเบเบญเบšเบกเบตเบกเบฑเบ™), เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "sudo setcap
'cap_sys_tty_config+ep' /path/to/fbterm".

FbTerm redirects /dev/tty0 output เป„เบ›เบซเบฒ pseudo terminal เบ‚เบญเบ‡ sub-window เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เปƒเบ™ Linux
เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบชเบฐเบšเบฑเบš 2.6.10, เบ—เบธเบเบ„เบปเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบเบฑเบ‡เบšเปเปˆเป„เบ”เป‰ redirected เป€เบ—เบทเปˆเบญ;
เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปโ€‹โ€‹เบ•เปˆเบชเบฐเบšเบฑเบš 2.6.10, เบžเบฝเบ‡เปเบ•เปˆเบฎเบฒเบเบซเบผเบทเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบกเบต CAP_SYS_ADMIN เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เป„เบ”เป‰
เบ™เบตเป‰. เบ—เปˆเบฒเบ™เบ„เบงเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบญเบฑเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบชเปเบฒเบฅเบฑเบš FbTerm เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰
เบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบฎเบฒเบ.

เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”


เบญเบตเบ‡เบ•เบฒเบกเบœเบปเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, FbTerm เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบเบงเปˆเบฒ 95% เปƒเบ™เบซเบ™เป‰เบฒเบˆเปเบชเบต. เป„เบงโ€‹เบ‚เบทเป‰เบ™
เบเบฒเบ™เปเบ•เป‰เบกเบฎเบนเบšเบˆเบฐเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบชเปเบฒเบฅเบฑเบšเบเบญเบš
เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™ bufferโ€‹:

* เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบ™โ€‹เป€เบฅเบทเปˆเบญเบ™โ€‹เป„เบงโ€‹เปƒเบ™โ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบเบญเบ™โ€‹เบšเบฑเบšโ€‹เป€เบŸโ€‹เบฃเบกโ€‹. เบซเบ™เป‰เบฒเบˆเปเบ—เบตเปˆเป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบ›เปˆเบญเบ‡เบขเป‰เบฝเบก
เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบงเบดเบ”เบตเป‚เบญ, เป€เบกเบทเปˆเบญเป€เบฅเบทเปˆเบญเบ™, FbTerm เบžเบฝเบ‡เปเบ•เปˆเบ›เปˆเบฝเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก, เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡
repaint เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹.

* เปƒเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ„เบญเบšเบ„เบปเบง Intel P6, เบ›เบฐเป€เบžเบ” Memory Range Registers (MTRRs) เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญ
เบเบฒเบ™โ€‹เบ„เบงเบšโ€‹เบ„เบธเบกโ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบ‚เบญเบ‡โ€‹เป‚เบฎเบ‡โ€‹เบ‡เบฒเบ™โ€‹เบœเบฐโ€‹เบฅเบดเบ”โ€‹เป€เบžเบทเปˆเบญโ€‹เบฅเบฐโ€‹เบ”เบฑเบšโ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบšเบฑเบ”เบงเบตเบ”เบตเป‚เบญเปƒเบ™เบฅเบปเบ”เป€เบก PCI เบซเบผเบท AGP,
เบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบ‚เบฝเบ™เปเบšเบšเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เป‚เบญเบ™เบเบฒเบ™เบ‚เบฝเบ™เบฅเบปเบ”เป€เบกเบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบญเบ™เบ—เบตเปˆเปƒเบซเบเปˆเบเบงเปˆเบฒ
เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบฅเบฐเป€เบšเบตเบ”เบ‚เบถเป‰เบ™เป€เบ—เบดเบ‡เบฅเบปเบ”เป€เบก PCI/AGP. เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เบชเบต FbTerm
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™.

เบšเบฒเบ‡เบ—เบตเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เป€เบ›เบตเบ”เปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เบชเบณเบฅเบฑเบšเบšเบฑเบ”เบงเบดเบ”เบตเป‚เบญเบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป„เบง
เบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™ เปเบฅเบฐเบเบฒเบ™เบ‚เบฝเบ™-เบฅเบงเบกเบเบฑเบ™เบ–เบทเบเบ›เบดเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบขเบนเปˆเปƒเบ™เบญเบธเบ›เบฐเบเบญเบ™ VESA frame buffer เบ—เบปเปˆเบงเป„เบ›,
เป„เบŸเบฅเปŒเบเบณเบ™เบปเบ”เบ„เปˆเบฒ GRUB/LILO เบ„เบงเบ™เบ–เบทเบเปเบเป‰เป„เบ‚เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡ GRUB เปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™
เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰:

เบŠเบทเปˆ Ubuntu
เบฎเบฒเบ (hd0,0)
kernel /boot/vmlinuz ro root=LABEL=UBUNTU splash vga=0x317 video=vesafb:ywrap,mtrr:3
initrd /boot/initrd.img

เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบเบงเบ”เป€เบšเบดเปˆเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เป„เบงเบ”เป‰เบงเบ "fbterm -v", เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเบกเบต "scrolling: redraw"
เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เป„เบงเบ–เบทเบเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™.

เปƒเบŠเป‰ fbterm เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

Linux เบ„เบณ เบชเบฑเปˆเบ‡

  • 1
    4ti2-zbasis
    4ti2-zbasis
    4ti2 - เบŠเบธเบ”เบŠเบญเบšเปเบงเบชเปเบฒเบฅเบฑเบš algebraic,
    เบšเบฑเบ™เบซเบฒเป€เบฅเบ‚เบฒเบ„เบฐเบ™เบดเบ” เปเบฅเบฐ combinatorial เบเปˆเบฝเบงเบเบฑเบš
    เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡...
    เปเบฅเปˆเบ™ 4ti2-zbasis
  • 2
    4ti2-zsolve
    4ti2-zsolve
    4ti2 - เบŠเบธเบ”เบŠเบญเบšเปเบงเบชเปเบฒเบฅเบฑเบš algebraic,
    เบšเบฑเบ™เบซเบฒเป€เบฅเบ‚เบฒเบ„เบฐเบ™เบดเบ” เปเบฅเบฐ combinatorial เบเปˆเบฝเบงเบเบฑเบš
    เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡...
    เปเบฅเปˆเบ™ 4ti2-zsolve
  • 3
    cpupower-เบ•เบฑเป‰เบ‡
    cpupower-เบ•เบฑเป‰เบ‡
    cpupower-set - เบ•เบฑเป‰เบ‡เบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบต
    kernel เบซเบผเบทเบฎเบฒเบ”เปเบงเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡
    เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒ ...
    เปเบฅเปˆเบ™ cpupower-set
  • 4
    cpupower
    cpupower
    cpupower - เบชเบฐเปเบ”เบ‡เปเบฅเบฐเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบต
    เบ„เปˆเบฒโ€‹เบ—เบตเปˆโ€‹เบเปˆเบฝเบงโ€‹เบ‚เป‰เบญเบ‡โ€‹เบเบฑเบšโ€‹เบžเบฐโ€‹เบฅเบฑเบ‡โ€‹เบ‡เบฒเบ™ ...
    เปเบฅเปˆเบ™ cpupower
  • 5
    เปเบเบกเบˆเบต
    เปเบเบกเบˆเบต
    gamgi - เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ—เบปเปˆเบงเป„เบ›
    เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบš ...
    เปเบฅเปˆเบ™ gamgi
  • 6
    gamgi.real
    gamgi.real
    gamgi - เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ—เบปเปˆเบงเป„เบ›
    เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบš ...
    เปเบฅเปˆเบ™ gamgi.real
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Ad