5个版本 (3个重大更新)

0.4.0 2024年6月17日
0.3.1 2023年12月11日
0.3.0 2023年12月7日
0.2.0 2023年10月12日
0.1.0 2023年8月28日

#292游戏开发

Download history 68/week @ 2024-06-11 62/week @ 2024-06-18

每月254次下载

MIT/Apache

84KB
2K SLoC

gba_clock

GitHub Workflow Status crates.io docs.rs License

GBA实时时钟库。

为运行在Game Boy Advance上的程序提供对RTC的访问,返回与time库兼容的日期和时间。

功能

  • 存储和读取由时间库表示的任何有效时间(即在±9999范围内的任何年份,或者在启用timelarge-dates功能时为±999,999)。
  • 在真实硬件和流行的模拟器(包括mGBA)上直接使用。
  • 可通过serde库进行序列化(通过启用serde功能)。

用法

通过Clock类型访问RTC。使用当前时间创建一个Clock,并使用返回的实例访问当前时间。

use gba_clock::Clock;
use time::{
    Date,
    Month,
    PrimitiveDateTime,
    Time,
};

let current_time = PrimitiveDateTime::new(
    Date::from_calendar_date(2001, Month::March, 21).expect("invalid date"),
    Time::from_hms(11, 30, 0).expect("invalid time"),
);
let clock = Clock::new(current_time).expect("could not communicate with the RTC");

// Read the current time whenever you need.
let time = clock
    .read_datetime()
    .expect("could not read the current time");

许可证

该项目受以下任一许可证的约束:

任选其一。

贡献

除非你明确表示,否则你提交的任何有意包含在作品中的贡献,根据Apache-2.0许可证的定义,应作为上述双许可,不附加任何额外条款或条件。

依赖项

~0.7–1MB
~17K SLoC