3 个版本
0.1.4 | 2023年11月29日 |
---|---|
0.1.3 | 2023年11月29日 |
0.1.2 | 2023年11月28日 |
0.1.1 |
|
0.1.0 |
|
#1 in #freestanding
用于 vgastream-rs
6KB
86 行代码(不包括注释)
cursor-rs
在独立 Rust 中获取和设置 VGA(0xB8000) 的光标位置。
使用方法
cargo add cursor-rs
示例
#![no_std]
extern crate vgainfo_rs;
use vgainfo_rs::*;
extern crate cursor_rs;
use cursor_rs::*;
fn reset_screen() {
let buffer_ptr = LENGTH as *mut VgaCharType;
let iter = (0..LENGTH).map(|i| unsafe { buffer_ptr.add(i) });
for ptr in iter {
let value = unsafe { ptr.read_volatile() };
unsafe { ptr.write_volatile(value & 0xff00) };
}
VgaCursor::new().set(0,0);
}
联系我
lib.rs
:
cursor_rs
在独立 Rust 中获取和设置 VGA(0xB8000) 的光标位置。
示例
#![no_std]
extern crate vgainfo_rs;
use vgainfo_rs::*;
extern crate cursor_rs;
use cursor_rs::*;
fn reset_screen() {
let buffer_ptr = LENGTH as *mut VgaCharType;
let iter = (0..LENGTH).map(|i| unsafe { buffer_ptr.add(i) });
for ptr in iter {
let value = unsafe { ptr.read_volatile() };
unsafe { ptr.write_volatile(value & 0xff00) };
}
VgaCursor::new().set(0,0);
}
依赖项
~7KB