/*
 * c8080 stdlib
 * Copyright (c) 2025 Aleksey Morozov aleksey.f.morozov@gmail.com aleksey.f.morozov@yandex.ru
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#pragma once

#pragma codepage reset

#pragma codepage('А', 0x80)
#pragma codepage('Б', 0x81)
#pragma codepage('В', 0x82)
#pragma codepage('Г', 0x83)
#pragma codepage('Д', 0x84)
#pragma codepage('Е', 0x85)
#pragma codepage('Ж', 0x86)
#pragma codepage('З', 0x87)
#pragma codepage('И', 0x88)
#pragma codepage('Й', 0x89)
#pragma codepage('К', 0x8A)
#pragma codepage('Л', 0x8B)
#pragma codepage('М', 0x8C)
#pragma codepage('Н', 0x8D)
#pragma codepage('О', 0x8E)
#pragma codepage('П', 0x8F)

#pragma codepage('Р', 0x90)
#pragma codepage('С', 0x91)
#pragma codepage('Т', 0x92)
#pragma codepage('У', 0x93)
#pragma codepage('Ф', 0x94)
#pragma codepage('Х', 0x95)
#pragma codepage('Ц', 0x96)
#pragma codepage('Ч', 0x97)
#pragma codepage('Ш', 0x98)
#pragma codepage('Щ', 0x99)
#pragma codepage('Ъ', 0x9A)
#pragma codepage('Ы', 0x9B)
#pragma codepage('Ь', 0x9C)
#pragma codepage('Э', 0x9D)
#pragma codepage('Ю', 0x9E)
#pragma codepage('Я', 0x9F)

#pragma codepage('а', 0xA0)
#pragma codepage('б', 0xA1)
#pragma codepage('в', 0xA2)
#pragma codepage('г', 0xA3)
#pragma codepage('д', 0xA4)
#pragma codepage('е', 0xA5)
#pragma codepage('ж', 0xA6)
#pragma codepage('з', 0xA7)
#pragma codepage('и', 0xA8)
#pragma codepage('й', 0xA9)
#pragma codepage('к', 0xAA)
#pragma codepage('л', 0xAB)
#pragma codepage('м', 0xAC)
#pragma codepage('н', 0xAD)
#pragma codepage('о', 0xAE)
#pragma codepage('п', 0xAF)

#pragma codepage('░', 0xB0)
#pragma codepage('▒', 0xB1)
#pragma codepage('▓', 0xB2)
#pragma codepage('│', 0xB3)
#pragma codepage('┤', 0xB4)
#pragma codepage('╡', 0xB5)
#pragma codepage('╢', 0xB6)
#pragma codepage('╖', 0xB7)
#pragma codepage('╕', 0xB8)
#pragma codepage('╣', 0xB9)
#pragma codepage('║', 0xBA)
#pragma codepage('╗', 0xBB)
#pragma codepage('╝', 0xBC)
#pragma codepage('╜', 0xBD)
#pragma codepage('╛', 0xBE)
#pragma codepage('┐', 0xBF)

#pragma codepage('└', 0xC0)
#pragma codepage('┴', 0xC1)
#pragma codepage('┬', 0xC2)
#pragma codepage('├', 0xC3)
#pragma codepage('─', 0xC4)
#pragma codepage('┼', 0xC5)
#pragma codepage('╞', 0xC6)
#pragma codepage('╟', 0xC7)
#pragma codepage('╚', 0xC8)
#pragma codepage('╔', 0xC9)
#pragma codepage('╩', 0xCA)
#pragma codepage('╦', 0xCB)
#pragma codepage('╠', 0xCC)
#pragma codepage('═', 0xCD)
#pragma codepage('╬', 0xCE)
#pragma codepage('╧', 0xCF)

#pragma codepage('╨', 0xD0)
#pragma codepage('╤', 0xD1)
#pragma codepage('╥', 0xD2)
#pragma codepage('╙', 0xD3)
#pragma codepage('╘', 0xD4)
#pragma codepage('╒', 0xD5)
#pragma codepage('╓', 0xD6)
#pragma codepage('╫', 0xD7)
#pragma codepage('╪', 0xD8)
#pragma codepage('┘', 0xD9)
#pragma codepage('┌', 0xDA)
#pragma codepage('█', 0xDB)
#pragma codepage('▄', 0xDC)
#pragma codepage('▌', 0xDD)
#pragma codepage('▐', 0xDE)
#pragma codepage('▀', 0xDF)

#pragma codepage('р', 0xE0)
#pragma codepage('с', 0xE1)
#pragma codepage('т', 0xE2)
#pragma codepage('у', 0xE3)
#pragma codepage('ф', 0xE4)
#pragma codepage('х', 0xE5)
#pragma codepage('ц', 0xE6)
#pragma codepage('ч', 0xE7)
#pragma codepage('ш', 0xE8)
#pragma codepage('щ', 0xE9)
#pragma codepage('ъ', 0xEA)
#pragma codepage('ы', 0xEB)
#pragma codepage('ь', 0xEC)
#pragma codepage('э', 0xED)
#pragma codepage('ю', 0xEE)
#pragma codepage('я', 0xEF)

#pragma codepage('Ё', 0xF0)
#pragma codepage('ё', 0xF1)
#pragma codepage('Є', 0xF2)
#pragma codepage('є', 0xF3)
#pragma codepage('Ї', 0xF4)
#pragma codepage('ї', 0xF5)
#pragma codepage('Ў', 0xF6)
#pragma codepage('ў', 0xF7)
#pragma codepage('°', 0xF8)
#pragma codepage('∙', 0xF9)
#pragma codepage('·', 0xFA)
#pragma codepage('√', 0xFB)
#pragma codepage('№', 0xFC)
#pragma codepage('¤', 0xFD)
#pragma codepage('■', 0xFE)

// FF - space
