comparison sms.c @ 2538:0bba312f94f7

Implement paste for the rest of the SC-3000 graphic characters
author Michael Pavone <pavone@retrodev.com>
date Thu, 28 Nov 2024 00:44:17 -0800
parents da4f297d9581
children a01c30bef250
comparison
equal deleted inserted replaced
2537:da4f297d9581 2538:0bba312f94f7
363 ACCENTED(0x3B8, 0x3B);//θ 363 ACCENTED(0x3B8, 0x3B);//θ
364 ACCENTED(0x3BB, 0x22);//λ 364 ACCENTED(0x3BB, 0x22);//λ
365 case 0xB5://µ 365 case 0xB5://µ
366 ACCENTED(0x3BC, 0x1A);//μ 366 ACCENTED(0x3BC, 0x1A);//μ
367 SHIFTED(0x3C0, 0x0E);//π 367 SHIFTED(0x3C0, 0x0E);//π
368 //Arrows
369 GRAPHIC(0x2190, 0x46);//←
370 GRAPHIC(0x2191, 0x3E);//↑
368 //Box drawing 371 //Box drawing
369 GRAPHIC(0x2500, 0x1E);//─ 372 GRAPHIC(0x2500, 0x1E);//─
370 GRAPHIC(0x2501, 0x34);//━ 373 GRAPHIC(0x2501, 0x34);//━
371 GRAPHIC(0x2502, 0x26);//│ 374 GRAPHIC(0x2502, 0x26);//│
372 GRAPHIC(0x2503, 0x2C);//┃ 375 GRAPHIC(0x2503, 0x2C);//┃
376 GRAPHIC(0x2518, 0x1B);//┘ 379 GRAPHIC(0x2518, 0x1B);//┘
377 SHIFTED_GRAPHIC(0x251C, 0x15);//├ 380 SHIFTED_GRAPHIC(0x251C, 0x15);//├
378 SHIFTED_GRAPHIC(0x2524, 0x1B);//┤ 381 SHIFTED_GRAPHIC(0x2524, 0x1B);//┤
379 SHIFTED_GRAPHIC(0x252C, 0x1D);//┬ 382 SHIFTED_GRAPHIC(0x252C, 0x1D);//┬
380 SHIFTED_GRAPHIC(0x2534, 0x1C);//┴ 383 SHIFTED_GRAPHIC(0x2534, 0x1C);//┴
384 SHIFTED_GRAPHIC(0x256D, 0x24);//╭
385 SHIFTED_GRAPHIC(0x256E, 0x2D);//╮
386 SHIFTED_GRAPHIC(0x256F, 0x2B);//╯
387 SHIFTED_GRAPHIC(0x2570, 0x23);//╰
381 GRAPHIC(0x253C, 0x16);//┼ 388 GRAPHIC(0x253C, 0x16);//┼
382 GRAPHIC(0x2571, 0x4E);//╱ 389 GRAPHIC(0x2571, 0x4E);//╱
383 GRAPHIC(0x2572, 0x5D);//╲ 390 GRAPHIC(0x2572, 0x5D);//╲
384 GRAPHIC(0x2573, 0x55);//╳ 391 GRAPHIC(0x2573, 0x55);//╳
385 //Block Elements 392 //Block Elements
389 SHIFTED_GRAPHIC(0x2584, 0x21);//▄ lower half 396 SHIFTED_GRAPHIC(0x2584, 0x21);//▄ lower half
390 GRAPHIC(0x2588, 0x2A);//█ full block 397 GRAPHIC(0x2588, 0x2A);//█ full block
391 GRAPHIC(0x258C, 0x32);//▌ left half 398 GRAPHIC(0x258C, 0x32);//▌ left half
392 GRAPHIC(0x258D, 0x31);//▍ left 3/8ths (Sega character is 1/3rd) 399 GRAPHIC(0x258D, 0x31);//▍ left 3/8ths (Sega character is 1/3rd)
393 GRAPHIC(0x258F, 0x3A);//▏ left 1/8th (Sega character is 1/6th) 400 GRAPHIC(0x258F, 0x3A);//▏ left 1/8th (Sega character is 1/6th)
401 GRAPHIC(0x2590, 0x21);//▐ right half
394 SHIFTED_GRAPHIC(0x2592, 0x2A);//▒ 402 SHIFTED_GRAPHIC(0x2592, 0x2A);//▒
395 SHIFTED_GRAPHIC(0x2594, 0x3A);//▔ upper 1/8th 403 SHIFTED_GRAPHIC(0x2594, 0x3A);//▔ upper 1/8th
396 GRAPHIC(0x2595, 0x1A);//▕ right 1/8th (Sega character is 1/6th) 404 GRAPHIC(0x2595, 0x1A);//▕ right 1/8th (Sega character is 1/6th)
397 GRAPHIC(0x259E, 0x33);//▞ 405 GRAPHIC(0x259E, 0x33);//▞
406 //Geometric Shapes
407 SHIFTED_GRAPHIC(0x25CB, 0x3C);//○
408 SHIFTED_GRAPHIC(0x25CF, 0x3B);//●
409 GRAPHIC(0x25E2, 0x24);//◢
410 GRAPHIC(0x25E3, 0x2D);//◣
411 GRAPHIC(0x25E4, 0x2B);//◤
412 GRAPHIC(0x25E5, 0x23);//◥
413 SHIFTED_GRAPHIC(0x25DC, 0x24);//◜
414 SHIFTED_GRAPHIC(0x25DD, 0x2D);//◝
415 SHIFTED_GRAPHIC(0x25DE, 0x2B);//◞
416 SHIFTED_GRAPHIC(0x25DF, 0x23);//◟
417 //Miscellaneous Symbols
418 GRAPHIC(0x263B, 0x3B);//☻
419 GRAPHIC(0x2660, 0x25);//♠
420 GRAPHIC(0x2663, 0x3D);//♣
421 GRAPHIC(0x2665, 0x2E);//♥
422 GRAPHIC(0x2666, 0x36);//♦
423 //Miscellaneous Symbos and Pictographs
424 GRAPHIC(0x1F47E, 0x42);//👾
425 //Transport and Map Symbols
426 SHIFTED_GRAPHIC(0x1F697, 0x33);//🚗
427 SHIFTED_GRAPHIC(0x1F698, 0x35);//🚘
428 //Symbols for legacy computing
429 SHIFTED_GRAPHIC(0x1FB82, 0x31);//🮂 upper 1/4th
430 GRAPHIC(0x1FB88, 0x22);//🮈 right 3/8ths (Sega character is 1/3rd)
431 case 0x1FB8C: //🮌 left half medium shade
432 SHIFTED_GRAPHIC(0x1FB8D, 0x2C);//🮍 right half medium shade, Sega char is sort of in the middle
433 case 0x1FB8E://🮎 upper half medium shade
434 SHIFTED_GRAPHIC(0x1FB8F, 0x34);//🮏 lower half medium shade, Sega char is sort of in the middle
435 GRAPHIC(0x1FBC5, 0x35);//🯅 stick figure
436 GRAPHIC(0x1FBCF, 0x31);//🯏 left 1/3rd
398 default: return (cp_keys){0}; 437 default: return (cp_keys){0};
399 } 438 }
400 } 439 }
401 440
402 static void advance_paste_buffer(sms_context *sms, const char *paste) 441 static void advance_paste_buffer(sms_context *sms, const char *paste)