mirror of
https://github.com/bobbimanners/emailler.git
synced 2024-05-28 05:41:28 +00:00
Compare commits
3 Commits
d015ca310c
...
d8d532fd72
Author | SHA1 | Date | |
---|---|---|---|
|
d8d532fd72 | ||
|
7c402facc7 | ||
|
7bb47d4b85 |
|
@ -397,14 +397,10 @@ void file_ui_draw_all(uint16_t first, uint16_t selected, uint16_t entries) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Perform ProDOS MLI ON_LINE call to
|
* Asm code for online()
|
||||||
* write all online volume names into iobuf[]
|
|
||||||
* Return the number of entries
|
|
||||||
*/
|
*/
|
||||||
uint16_t online(void) {
|
#pragma optimize (push, off)
|
||||||
uint16_t entries = 0;
|
void onlineasm(void) {
|
||||||
struct tabent *entry;
|
|
||||||
uint8_t i, j, len;
|
|
||||||
__asm__("lda #$00"); // All devices
|
__asm__("lda #$00"); // All devices
|
||||||
__asm__("sta mliparam + 1");
|
__asm__("sta mliparam + 1");
|
||||||
__asm__("lda #<%v", iobuf); // iobuf LSB
|
__asm__("lda #<%v", iobuf); // iobuf LSB
|
||||||
|
@ -415,6 +411,19 @@ uint16_t online(void) {
|
||||||
__asm__("lda #$c5"); // ON_LINE
|
__asm__("lda #$c5"); // ON_LINE
|
||||||
__asm__("ldx #$02"); // Two parms
|
__asm__("ldx #$02"); // Two parms
|
||||||
__asm__("jsr callmli");
|
__asm__("jsr callmli");
|
||||||
|
}
|
||||||
|
#pragma optimize (pop)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Perform ProDOS MLI ON_LINE call to
|
||||||
|
* write all online volume names into iobuf[]
|
||||||
|
* Return the number of entries
|
||||||
|
*/
|
||||||
|
uint16_t online(void) {
|
||||||
|
uint16_t entries = 0;
|
||||||
|
struct tabent *entry;
|
||||||
|
uint8_t i, j, len;
|
||||||
|
onlineasm();
|
||||||
entry = (struct tabent*)iobuf;
|
entry = (struct tabent*)iobuf;
|
||||||
for (i = 0; i < 16; ++i) {
|
for (i = 0; i < 16; ++i) {
|
||||||
len = iobuf[256 + i * 16] & 0x0f;
|
len = iobuf[256 + i * 16] & 0x0f;
|
||||||
|
|
23
apps/email.c
23
apps/email.c
|
@ -925,6 +925,21 @@ void sanitize_filename(char *s) {
|
||||||
|
|
||||||
enum aux_ops {FROMAUX, TOAUX};
|
enum aux_ops {FROMAUX, TOAUX};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Asm code for copyaux()
|
||||||
|
*/
|
||||||
|
#pragma optimize (push, off)
|
||||||
|
void copyauxasm(enum aux_ops dir) {
|
||||||
|
if (dir == TOAUX)
|
||||||
|
__asm__("sec"); // Copy main->aux
|
||||||
|
else
|
||||||
|
__asm__("clc"); // Copy aux->main
|
||||||
|
__asm__("sta $c000"); // Turn off 80STORE
|
||||||
|
__asm__("jsr $c311"); // AUXMOVE
|
||||||
|
__asm__("sta $c001"); // Turn on 80STORE
|
||||||
|
}
|
||||||
|
#pragma optimize (pop)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Aux memory copy routine
|
* Aux memory copy routine
|
||||||
*/
|
*/
|
||||||
|
@ -935,13 +950,7 @@ void copyaux(char *src, char *dst, uint16_t len, enum aux_ops dir) {
|
||||||
*a1 = src;
|
*a1 = src;
|
||||||
*a2 = src + len - 1; // AUXMOVE moves length+1 bytes!!
|
*a2 = src + len - 1; // AUXMOVE moves length+1 bytes!!
|
||||||
*a4 = dst;
|
*a4 = dst;
|
||||||
if (dir == TOAUX)
|
copyauxasm(dir);
|
||||||
__asm__("sec"); // Copy main->aux
|
|
||||||
else
|
|
||||||
__asm__("clc"); // Copy aux->main
|
|
||||||
__asm__("sta $c000"); // Turn off 80STORE
|
|
||||||
__asm__("jsr $c311"); // AUXMOVE
|
|
||||||
__asm__("sta $c001"); // Turn on 80STORE
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#define PROGNAME "emai//er v2.1.13"
|
#define PROGNAME "emai//er v2.1.14"
|
||||||
|
|
||||||
// Configuration params from EMAIL.CFG
|
// Configuration params from EMAIL.CFG
|
||||||
char cfg_server[40]; // IP of POP3 server
|
char cfg_server[40]; // IP of POP3 server
|
||||||
|
|
Loading…
Reference in New Issue
Block a user