Short: Unofficial Telegram text client, 68000 Author: Michele Dipace Uploader: michele dipace kaffeine net (Michele Dipace) Type: comm/tcp Version: 0.0.99 Replaces: comm/tcp/TelegramAmiga-68000.lha Requires: 68000, 2 MB fast RAM, TCP/IP, login made on a faster Amiga Architecture: m68k-amigaos >= 3.0.0 WHAT IS THIS? ------------- Unofficial Telegram Amiga: it uses the Telegram API and is part of the Telegram ecosystem, but it is not made by Telegram. Telegram Amiga brings real, live Telegram chat to the Amiga -- not through a gateway, a proxy service or a web wrapper, but by speaking Telegram's own MTProto protocol natively, from scratch, on your machine. You sign in to your normal Telegram account, your chat list appears, and you talk to people (and they talk back) on hardware that may well be older than they are. Everything is built in: RSA, Diffie-Hellman, AES, SHA and the SRP two- factor login are implemented inside the program. Zero external dependencies -- no MUI, no ixemul.library, no AmiSSL, no TCP helper beyond your system's own bsdsocket stack. One text/console client, built for the plain 68000: TelegramAmiga-TUI - the full-screen text client. The Intuition GUI needs a 68020 or better, so this package ships the console face alone. WHAT CAN I ACTUALLY DO WITH IT? ------------------------------- This archive is the text client alone, built for a plain 68000 Amiga (A500, A600, A1000, A2000, CDTV) with about 2 MB of free fast RAM: the window, its renderer and the JPEG decoder are left out of the build, so the whole program loads in about 1.5 MB. Read and send messages in private chats, groups and channels, in a full-screen console with colours and a word-wrapping composer of up to three rows. Pick a chat from the list or with the F-keys, receive new messages live, reply, edit and delete your own messages, see read receipts, download received files (/getfile) and send files from disk (/sendfile). The pinned Saved Messages chat doubles as a transfer drawer between the Amiga and your phone or PC. Limits of this build: 12 chats in the list, 8 messages per page, message text up to 2 KB, downloads in 16 KB pieces. With a 68020 or better, take the AmigaOS 3.x archive (TelegramAmiga.lha) instead: it has the window, inline photos and emoji. GETTING STARTED --------------- 1. Log in once on a FASTER Amiga (68020 or better) or in an emulator with the normal archive: the login's key exchange is too much for a 68000. 2. Copy this drawer to a WRITABLE volume of the 68000 machine, then copy telegram-auth.bin and the data drawer from the faster setup into it. 3. Double-click TelegramAmiga-TUI. The same account can stay logged in on both machines. telegram-auth.bin holds your login. Treat that file like a house key: NEVER share it -- anyone who has it has your Telegram session. Full EN and IT manuals are in the archive, including notes for the plain 68000. WHAT IS NEW IN 0.0.99 --------------------- ADDED - "Support development..." in the window's Telegram menu, after Help: it says where to support my work on Patreon and opens the link, or copies it when no OpenURL command is there. Voluntary, nothing changes without it, and it never shows on its own. The text client has the same two lines at the end of /help. - More reactions than the ten of the grid. When a chat allows more, the grid's last cell is an arrow that opens every reaction it allows, ten to a row: in a chat that allows all, the 69 free reactions in Telegram's order, and a group's own list whole instead of cut to ten. The text client's /react takes every standard reaction by name, and /reactions lists the names. - Hide message, after a user asked to get rid of posts that do not interest them in groups. Telegram lets nobody delete someone else's message for themselves in a supergroup, so in a group or a channel the right-button menu of someone else's message offers Hide message: it leaves the transcript and stays out on every reload, kept in data/telegram-hidden-msgs.txt (the newest 256). "Show hidden messages" in the chat's menu in the list brings them back. In a basic group the client also asks Telegram to delete it for this account, so it goes from one's other devices too, and that cannot be undone. The text client has /hide, on the last message received or on an id, and /unhide. - /ring in the text client, for the open chat: /ring on lets a group or a channel ring, /ring off makes it quiet again, the same choice as "Enable ring" in the window's chat menu and kept in the same file, so it holds in both. Since 0.0.98 groups start quiet, and the 68000 build, which has only the text client, had no way to wake one. In a direct chat on and off unmute and mute it, and /ring alone says what the chat does now, Telegram's own mute and /bell included. - /ids in the text client, after a user asked what to put where /react wants a message id: the text client never showed one. Switched on, each message starts with its number, like #4821, which /react, /forward and /forwardto take; off by default, so the lines stay as they were. And /react no longer needs the number: without one it takes the last message received from the others, never one's own, so /react heart is enough. - 38 more emoji on the sheet, from the same Noto Emoji set: the free reactions that were missing, among them the exploding head, the clown, the whale, the trophy, the ghost, the unicorn and the three monkeys. They show in messages and reactions, join the end of the emoji panel, and read as short words in the text client, like (unicorn) or o7. CHANGED - The hint a lone / shows in the text client lists every command /help does, on four lines of at most 64 columns. It had fallen behind: /reactions, /ids, /hide, /ring and older ones like /swap and /diff were missing, and its second line ran past 80 columns. - More contrast in the dark colours, same hues, after a user asked for no dark blue on black. The selected chat takes the desktop's selection blue, and on it the time and preview are drawn in the full text colour. Sender names in groups take a lighter shade of their avatar colour, the incoming bubbles and the side panel stand a little further from the window, the read ticks are lighter on one's own bubble, and the unread badge is a brighter blue with a white number. FIXED - A message's right-button menu acts on the message it was opened on. It remembered the message by its row, and in a chat with a full transcript every new message moves each row up by one, so a message arriving while the menu or the reaction grid was open turned the choice to the message below: a reaction landed there, and when that message already carried the same reaction of yours, it was taken away instead. Reply, Edit, Delete, Download and Copy could miss in the same way. The menu now finds its message again by id, and closes when that message is no longer loaded. - Reactions on a photo, a file or a message with a link preview stay shown. The history reader stops at such a message's media, short of its reactions, and passed that unread field on as "no reactions": each refresh of the chat wiped the reactions just added, and reopening the chat showed none, though Telegram and the other clients had them. The history now leaves such a message's reactions as they are, and the periodic reactions poll asks Telegram for them once, the user's own messages included. Opening a chat asks at once instead of waiting for the poll's twenty seconds, and the answer shows on the same tick. - Smoother round shapes on true-colour screens: the reaction chips, the unread badges, the jump button and the initials discs. Their edge was a one-pixel ring halfway between the shape and the background, with the shape one pixel inside it, which read as a dark rim along the straight sides. Each edge pixel now takes the share of it the true circle covers, in quarters, and the shape keeps its full size. Paletted screens keep the hard edge. A COMMUNITY PROJECT ------------------- MIT licensed, non-commercial, written for the love of the platform. Bug reports and wishes are very welcome -- testers on real hardware (A1200s, A4000s, Pegasos, Sam, FPGA machines) are what moves this project forward. Thanks to Paolo Arus (DaRkHoRaCe), without whose tenacity in testing, round after round on an A600, the 68000 version would never have come out. The icon is our own design. Carlo Spadoni optimised it for each system, put it on a standard drawer for the drawer icon, and let me ship his versions. Source + issues: https://github.com/kaffeine1/telegram-amiga Development diary: https://androidlab.it/en/telegram-amiga-mtproto-client-development-diary/ Support my work on Patreon (voluntary; no subscription is required to use this software): https://www.patreon.com/c/kaffeine1