mirror of
https://github.com/TomHarte/CLK.git
synced 2025-01-31 18:31:12 +00:00
Makes basic typing adaptations.
This commit is contained in:
parent
6e4bd4f505
commit
b33f568fdd
@ -46,7 +46,7 @@ uint16_t *CharacterMapper::sequence_for_character(char character) {
|
||||
/* ACK */ X, /* BEL */ X,
|
||||
/* BS */ SHIFT(Key0), /* HT */ X,
|
||||
/* LF */ KEYS(KeyEnter), /* VT */ X,
|
||||
/* FF */ X, /* CR */ X,
|
||||
/* FF */ X, /* CR */ KEYS(KeyEnter),
|
||||
/* SO */ X, /* SI */ X,
|
||||
/* DLE */ X, /* DC1 */ X,
|
||||
/* DC2 */ X, /* DC3 */ X,
|
||||
@ -112,7 +112,7 @@ uint16_t *CharacterMapper::sequence_for_character(char character) {
|
||||
/* ACK */ X, /* BEL */ X,
|
||||
/* BS */ SHIFT(Key0), /* HT */ X,
|
||||
/* LF */ KEYS(KeyEnter), /* VT */ X,
|
||||
/* FF */ X, /* CR */ X,
|
||||
/* FF */ X, /* CR */ KEYS(KeyEnter),
|
||||
/* SO */ X, /* SI */ X,
|
||||
/* DLE */ X, /* DC1 */ X,
|
||||
/* DC2 */ X, /* DC3 */ X,
|
||||
|
@ -32,7 +32,7 @@ struct KeyboardMapper: public KeyboardMachine::MappedMachine::KeyboardMapper {
|
||||
class CharacterMapper: public ::Utility::CharacterMapper {
|
||||
public:
|
||||
CharacterMapper(bool is_zx81);
|
||||
uint16_t *sequence_for_character(char character);
|
||||
uint16_t *sequence_for_character(char character) override;
|
||||
|
||||
private:
|
||||
bool is_zx81_;
|
||||
|
@ -340,7 +340,11 @@ template<bool is_zx81> class ConcreteMachine:
|
||||
}
|
||||
|
||||
void type_string(const std::string &string) final {
|
||||
Utility::TypeRecipient::add_typer(string, std::make_unique<CharacterMapper>(is_zx81));
|
||||
if(typer_) {
|
||||
typer_->append(string);
|
||||
} else {
|
||||
Utility::TypeRecipient::add_typer(string, std::make_unique<CharacterMapper>(is_zx81));
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Keyboard
|
||||
@ -373,8 +377,13 @@ template<bool is_zx81> class ConcreteMachine:
|
||||
}
|
||||
|
||||
// MARK: - Typer timing
|
||||
HalfCycles get_typer_delay() final { return Cycles(7000000); }
|
||||
HalfCycles get_typer_frequency() final { return Cycles(390000); }
|
||||
HalfCycles get_typer_delay() final {
|
||||
return z80_.get_is_resetting() ? Cycles(7'000'000) : Cycles(0);
|
||||
}
|
||||
|
||||
HalfCycles get_typer_frequency() final {
|
||||
return Cycles(390'000);
|
||||
}
|
||||
|
||||
KeyboardMapper *get_keyboard_mapper() final {
|
||||
return &keyboard_mapper_;
|
||||
|
Loading…
x
Reference in New Issue
Block a user